DE102018206439A1 - Softwareverwaltungssystem, Softwareupdatevorrichtung, Softwareupdateverfahren und Softwareupdateprogramm - Google Patents

Softwareverwaltungssystem, Softwareupdatevorrichtung, Softwareupdateverfahren und Softwareupdateprogramm Download PDF

Info

Publication number
DE102018206439A1
DE102018206439A1 DE102018206439.3A DE102018206439A DE102018206439A1 DE 102018206439 A1 DE102018206439 A1 DE 102018206439A1 DE 102018206439 A DE102018206439 A DE 102018206439A DE 102018206439 A1 DE102018206439 A1 DE 102018206439A1
Authority
DE
Germany
Prior art keywords
software
control
update
key data
control software
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
DE102018206439.3A
Other languages
English (en)
Inventor
Takaaki Shogaki
Atsunobu Sakata
Tadashi Okubo
Dai FUKUDA
Toshinobu KIRA
Amane Ando
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yaskawa Electric Corp
Original Assignee
Yaskawa Electric Corp
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 Yaskawa Electric Corp filed Critical Yaskawa Electric Corp
Publication of DE102018206439A1 publication Critical patent/DE102018206439A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/105Arrangements for software license management or administration, e.g. for managing licenses at corporate level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2101Auditing as a secondary aspect
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)
  • Programmable Controllers (AREA)

Abstract

[Aufgabe]Sicheres und einfaches Updaten einer Steuerungssoftware, auch bei einem Steuersystem ohne externe Verbindung.[Lösungsweg]Vorgesehen sind eine mit einem ersten Netzwerk 26 verbundene, mittels der Verarbeitung einer updatefähigen Steuerungssoftware steuernde Steuervorrichtungen 21, 22, 24 und 25 aufweisende Maschinenanlage 2,ein Cloud-Server 3, in dem die Steuerungssoftware abgelegt ist und der über das Internet 5 die Steuerungssoftware sendet, undeine Updatevorrichtung 4, die im mit dem Internet 5 verbundenen Zustand die Steuerungssoftware von dem Cloud-Server 3 empfängt und ablegt, und im mit dem Feldnetzwerk 26 verbundenen Zustand die abgelegte Steuerungssoftware an die Steuervorrichtungen 21, 22, 24 und 25 sendet und ein Update erfolgen lässt.

Description

  • [Technisches Gebiet]
  • Die offenbarte Ausführungsform betrifft ein Softwareverwaltungssystem, eine Softwareupdatevorrichtung, ein Softwareupdateverfahren und ein Softwareupdateprogramm.
  • [Hintergrundtechnologie]
  • In der Patentliteratur 1 ist ein Wartungsgerät offenbart, das eine Software, die in einem Controller gespeichert ist, der in einer Anwenderwerkstatt aufgestellte Maschinen und Geräte steuert, mit einer über das Internet von einer Verwaltungsvorrichtung auf der Seite des Verkäufers empfangenen Nachbesserungssoftware updatet.
  • [Literatur des Standes der Technik]
  • [Patentliteratur]
  • [Patentliteratur 1] JP Offenlegungsschrift Nr. 2003-029819
  • [Überblick über die Erfindung]
  • [Durch die Erfindung zu lösende Aufgabe]
  • In den letzten Jahren ist jedoch aus Sorge um die Sicherheit vielerorts ein direkter Anschluss ans Internet innerhalb der Werkstatt verboten, sodass eine Software nicht wie bei der vorstehenden herkömmlichen Technologie von einer externen Verwaltungsvorrichtung über ein Wartungsgerät innerhalb der Werkstatt direkt auf den jeweiligen Controller heruntergeladen und upgedated werden kann.
  • Die vorliegende Erfindung berücksichtigt diesen Problempunkt und beabsichtigt die Bereitstellung eines Softwareverwaltungssystems, einer Softwareupdatevorrichtung, eines Softwareupdateverfahrens und Softwareupdateprogramms, durch die auch bei einem nicht mit außen verbundenen Steuersystem eine Steuerungssoftware sicher und einfach upgedated werden kann.
  • [Mittel zum Lösen der Aufgabe]
  • Um diese Aufgabe zu lösen, wird gemäß einem Aspekt der vorliegenden Erfindung ein Softwareverwaltungssystem verwendet, das ein mit einem ersten Netzwerk verbundenes Steuersystem mit einer Steuervorrichtung oder einem Sensor, welche mittels der Verarbeitung einer updatefähigen Steuerungssoftware steuerbar sind, eine Softwaredistributionsvorrichtung, in der die Steuerungssoftware abgelegt ist und die ausgestaltet ist, über ein zweites Netzwerk die Steuerungssoftware zu senden, und eine Softwareupdatevorrichtung aufweist, die ausgestaltet ist, im mit dem zweiten Netzwerk verbundenen Zustand die Steuerungssoftware von der Softwaredistributionsvorrichtung zu empfangen und abzulegen, und im mit dem ersten Netzwerk verbundenen Zustand die abgelegte Steuerungssoftware an die Steuervorrichtung oder den Sensor zu senden und ein Update erfolgen zu lassen.
  • Ferner wird gemäß einem anderen Aspekt der vorliegenden Erfindung eine Softwareupdatevorrichtung verwendet, die ausgestaltet ist, eine auf bestimmten Schlüsseldaten basierend codierte Steuerungssoftware und die entsprechenden Schlüsseldaten zu empfangen und die Steuervorrichtung oder den Sensor zu veranlassen, die basierend auf den Schlüsseldaten decodierte Steuerungssoftware upzudaten.
  • Ferner wird gemäß einem anderen Aspekt der vorliegenden Erfindung ein Softwareupdateverfahren verwendet, bei dem es sich um ein bei einer Softwareupdatevorrichtung ausgeführtes Softwareupdateverfahren handelt, durch das ausgeführt wird, dass eine auf bestimmten Schlüsseldaten basierend codierte Steuerungssoftware und die entsprechenden Schlüsseldaten empfangen, die empfangenen Schlüsseldaten ausgegeben und die Schlüsseldaten eingegeben werden, und basierend auf den eingegebenen Schlüsseldaten die empfangene Steuerungssoftware decodiert und die Steuervorrichtung oder der Sensor veranlasst wird, die basierend auf den Schlüsseldaten decodierte Steuerungssoftware upzudaten.
  • Ferner wird gemäß einem anderen Aspekt der vorliegenden Erfindung ein Softwareupdateprogramm verwendet, bei dem es sich um ein durch eine Rechenvorrichtung, die eine Softwareupdatevorrichtung aufweist, ausgeführtes Softwareupdateprogramm handelt, durch dessen Ausführung eine codierte Steuerungssoftware und die entsprechenden Schlüsseldaten empfangen, die empfangenen Schlüsseldaten ausgegeben und die Schlüsseldaten eingegeben werden, und basierend auf den eingegebenen Schlüsseldaten die empfangene Steuerungssoftware decodiert und die Steuervorrichtung oder der Sensor veranlasst wird, die basierend auf den Schlüsseldaten decodierte Steuerungssoftware upzudaten.
  • [Wirkungen der Erfindung]
  • Erfindungsgemäß kann auch bei einem nicht mit außen verbundenen Steuersystem eine Steuerungssoftware sicher und einfach upgedated werden.
  • Figurenliste
    • 1 ist ein Funktionsblockbild, das den schematischen Aufbau des Softwareverwaltungssystems gemäß der Ausführungsform darstellt.
    • 2 ist ein Systemblockbild, das den internen Aufbau eines Cloud-Servers darstellt.
    • 3 ist ein Systemblockbild, das den internen Aufbau der Updatevorrichtung darstellt.
    • 4 ist ein Sequenzdiagramm der Verarbeitungsschritte beim Downloaden der Steuerungssoftware.
    • 5 ist ein Sequenzdiagramm der Verarbeitungsschritte beim Updaten der Steuerungssoftware.
    • 6 ist ein Sequenzdiagramm der Verarbeitungsschritte beim Uploaden der Softwareupdateinformationen für mit einem Datenfeldnetzwerk verbundene Steuergeräte auf einen Cloud-Server.
    • 7 ist eine Darstellung, die ein Beispiel des Registrierungsinhalts einer Login-Historien-Datenbank und dessen Anzeige zeigt.
    • 8 ist ein Funktionsblockbild, das den schematischen Aufbau des Softwareverwaltungssystems gemäß eines abgewandelten Beispiels darstellt.
  • [Ausführungsformen der Erfindung]
  • Im Folgenden werden Ausführungsformen der vorliegenden Erfindung mit Referenz auf die Figuren erläutert.
  • <Schematischer Aufbau des Softwareverwaltungssystems>
  • 1 ist ein Funktionsblockbild, das den schematischen Aufbau des Softwareverwaltungssystems darstellt, bei dem es sich um eine Ausführungsform der vorliegenden Erfindung handelt.
  • Bei dem Softwareverwaltungssystem der vorliegenden Ausführungsform handelt es sich um ein System, das eine Updateverwaltung derart durchführt, dass es für eine Steuerungssoftware der jeweiligen Steuergeräte, mit denen eine Maschinenanlage in einer Produktionswerkstatt ausgerüstet ist, eine höhere Version (mit einer neuen Versionszahl) von einem Cloud-Server über das Internet verteilt.
  • In 1 weist ein Softwareverwaltungssystem 1 eine Maschinenanlage 2, einen Cloud-Server 3 und eine Updatevorrichtung 4 auf. In 1 ist die Verbindung der Signalleitungen zum Senden und Empfangen der Informationssignale zwischen den vorstehenden jeweiligen Strukturelementen dargestellt, wobei deren jeweiliger innerer Aufbau im Folgenden erläutert wird. Im Folgenden werden die vorstehenden einzelnen Strukturelemente kurz erläutert.
  • Bei der Maschinenanlage 2 (dem Steuersystem) handelt es sich bei dem dargestellten Beispiel z. B. um eine mittels mehrerer Motoren antriebsgesteuerte Produktionsmaschine, die eine übergeordnete Steuervorrichtung 21, mehrere Motorsteuervorrichtungen 22, mit den einzelnen Motorsteuervorrichtungen 22 jeweils verbundene Motoren 23 und Encoder 24 und mehrere externe Sensoren 25 (in der Figur als „Sensor“ bezeichnet) aufweist, die mit einem die einzelnen Motorsteuervorrichtungen 22 und die einzelnen Encoder 23 verbindenden, im Folgenden erläuterten Feldnetzwerk ferner seriell geschaltet sind.
  • Damit die mehreren Motoren 23, die die betreffende Maschinenanlage 2 aufweist, koordiniert gesteuert werden, weist die übergeordnete Steuervorrichtung 21 die Funktion auf, während sie von den einzelnen Motorsteuervorrichtungen 22 verschiedene Zustandsinformationen empfängt, auf der Basis dieser Zustandsinformationen an die einzelnen Motorsteuervorrichtungen 22 individuelle Steuerbefehle zu senden. Die übergeordnete Steuervorrichtung 21 ist über ein auf die Maschinensteuerung spezialisiertes sogenanntes Feldnetzwerk 26a (erstes Netzwerk; z. B. MECHATROLINK®) mit den einzelnen Motorsteuervorrichtungen 22 derart verbunden, dass Informationen gesendet und empfangen werden können. Ferner wird ein Senden und Empfangen von Informationen dadurch möglich, dass die übergeordnete Steuervorrichtung 21 mit der im Folgenden erwähnten Updatevorrichtung 4 über ein Kabel (bei dem dargestellten Beispiel ein USB-Kabel 27) verbunden ist.
  • Die Motorsteuervorrichtung 22 weist die Funktion auf, während sie von dem Encoder 24 und dem externen Sensor 25 verschiedene Zustandsinformationen empfängt, auf der Basis dieser Zustandsinformationen und von der übergeordneten Steuervorrichtung 21 empfangener Steuerbefehle eine elektrische Antriebsleistung zum Steuern des Motors 23 zuzuführen. Ferner sendet die Motorsteuervorrichtung 22 die empfangenen Zustandsinformationen auch an die übergeordnete Steuervorrichtung 21. Die Motorsteuervorrichtung 22 ist über ein auf das Senden und Empfangen von Zustandsinformationen spezialisiertes sogenanntes Feldnetzwerk 26b (erstes Netzwerk; bei dem dargestellten Beispiel Σ-LINK®) derart verbunden, dass von dem Encoder 24 und dem externen Sensor 25 Informationen gesendet und empfangen werden können. Übrigens entsprechen die vorstehende übergeordnete Steuervorrichtung 21 und die Motorsteuervorrichtung 22 der in den jeweiligen Ansprüchen angegebenen Steuervorrichtung und der Encoder 24 und der externe Sensor 25 dem in den jeweiligen Ansprüchen angegebenen Sensor. Ferner wird ein Senden und Empfangen von Informationen dadurch möglich, dass die Motorsteuervorrichtung 22 mit der im Folgenden erwähnten Updatevorrichtung 4 über ein Kabel (z. B. ein USB-Kabel) verbunden ist (nicht speziell dargestellt).
  • Bei dem Cloud-Server 3 (der Softwaredistributionsvorrichtung) handelt es sich um einen auf der Seite des Herstellers der verschiedenen Arten von Steuergeräten wie der von der Maschinenanlage 2 umfassten übergeordneten Steuervorrichtung 21, den Motorsteuervorrichtungen 23, den Encodern 24 und den externen Sensoren 25 vorgesehenen Server, der über ein weiträumiges Netzwerk (zweites Netzwerk) wie z. B. ein Internet 5 derart verbunden ist, dass ein Senden und Empfangen von Informationen an die/von der Produktionswerkstatt 6 möglich ist. Der Cloud-Server 3 speichert eine höhere verbesserte Version der Steuerungssoftware (in der Figur kurz als „Software“ bezeichnet), die in den vorstehenden jeweiligen Steuergeräten abgelegt ist und die Steuerung durchführt, und weist die Funktion auf, diese zu verteilen (im Folgenden als Downloaden bezeichnet) und z. B. die Updateinformationen zu verwalten. Übrigens wird der innere Aufbau des Cloud-Servers 3 im Folgenden konkret beschrieben (vgl. die im Folgenden beschriebene 2).
  • Die Updatevorrichtung 4 (Softwareupdatevorrichtung) besteht in dem dargestellten Beispiel aus einem leicht zu transportierenden und bewegenden Mehrzweck-Personal Computer eines Notebookformats (im Folgenden als Notebook bezeichnet), und weist die Funktion auf, mittels einer auf seinem OS (Operationssystem) laufenden Tool Application (Softwareupdateprogramm) verschiedene Verarbeitungen bezüglich der Steuerungssoftware und der Geräteinformationen auszuführen. Die Updatevorrichtung 4 ist über das USB-Kabel 27 mit der übergeordneten Steuervorrichtung 21, über das USB-Kabel mit den Motorsteuervorrichtungen 22 (nicht dargestellt) und über das Internet 5 mit dem Cloud-Server 3 verbindbar. Übrigens wird der Verarbeitungsaufbau der auf der Updatevorrichtung 4 laufenden Tool Application im Folgenden konkret beschrieben (vgl. die im Folgenden beschriebene 3).
  • <Merkmale der vorliegenden Ausführungsform>
  • Maschinenanlagen 2 bei einer solchen Fabrikautomatisierung sind häufig als Steuersystem aufgebaut, bei dem mittels sogenannter Feldnetzwerke 26, 26a und 26b verbundene verschiedene Steuervorrichtungen (einschließlich der übergeordneten Steuervorrichtung 21 und der Motorsteuervorrichtungen 22) und verschiedene Sensoren koordiniert agieren. Diese Steuervorrichtungen und Sensoren werden jeweils durch eine Verarbeitung der abgelegten Steuerungssoftware gesteuert, wobei bezüglich der jeweiligen Steuerungssoftware außerdem eine verbesserte höhere Version über das Feldnetzwerk 26 empfangen und upgedatet werden kann. Dann wird in den letzten Jahren auf dem auf der Seite der Hersteller der jeweiligen Steuervorrichtungen und Sensoren bereitgestellten Cloud-Server 3 die Steuerungssoftware einer höheren Version abgelegt, sodass ein Benutzer diese über das Internet 5 downloaden kann.
  • Andererseits wird unter Berücksichtigung der Sicherheit, d. h. um ein Durchsickern geheimer Informationen zu verhindern und als Maßnahme gegen eine Cyber-Attacke häufig ein direkter Anschluss des Feldnetzwerks 26 an das Internet 5 verboten und ein dauerhafter Isolierungszustand beibehalten, wobei in einem solchen Fall ein direktes Downloaden und Updaten der Steuerungssoftware von dem Cloud-Server 3 auf die einzelnen Steuervorrichtungen und Sensoren nicht möglich ist.
  • Demgegenüber ist bei der vorliegenden Ausführungsform die Updatevorrichtung 4 vorgesehen, die in einem mit dem Internet 5 verbundenen Zustand von dem Cloud-Server 3 die Steuerungssoftware empfängt und ablegt, und in einem mit dem Feldnetzwerk 26 verbundenen Zustand die abgelegte Steuerungssoftware an die Steuervorrichtungen oder die Sensoren sendet und updatet. Besteht die Updatevorrichtung 4 aus einem transportier- und bewegbaren Informationsendgerät wie z. B. dem vorstehenden Notebook, wird im mit dem Internet 5 verbundenen Zustand die erforderliche höhere Version der Steuerungssoftware von dem Cloud-Server 3 heruntergeladen. Anschließend wird die Verbindung der Updatevorrichtung 4 mit dem Internet 5 getrennt und in einem umgeschalteten Verbindungszustand mit dem Feldnetzwerk 26 über das separate USB-Kabel 27 und die übergeordnete Steuervorrichtung 21 oder das USB-Kabel und die Motorsteuervorrichtung 22 (nicht dargestellt) wird die Steuerungssoftware an die einzelnen Steuervorrichtungen und Sensoren gesendet und upgedated. Auf diese Weise kann durch die Umschaltungsverbindung der Updatevorrichtung 4 mit dem Internet 5 und dem Feldnetzwerk 26, während ein dauerhafter physikalischer Isolierungszustand zwischen den beiden Netzwerken aufrechterhalten wird, mittels einer heruntergeladenen Steuerungssoftware upgedatet werden. Der für die vorstehende Softwareverwaltung erforderliche Aufbau und deren Abfolge wird im Folgenden der Reihe nach erläutert.
  • <Konkreter Aufbau des Cloud-Servers>
  • 2 zeigt ein Systemblockbild, das den internen Aufbau des vorstehenden Cloud-Servers 3 darstellt. In 2 weist der Cloud-Server 3 eine mit dem Internet 5 verbundene Verarbeitungskomponente 31, Softwarespeicherkomponenten 32, in denen verschiedene Steuerungssoftware abgelegt wird, und eine Login-Historien-Datenbank 33 auf, die Login-Historien speichert.
  • Die Verarbeitungskomponente 31 weist die Funktion auf, entsprechend der Bedienung eines in den betreffenden Cloud-Server 3 eingeloggten Bedieners eine Verarbeitung, durch die eine in den vorstehenden Softwarespeicherkomponenten 32 abgelegte Steuerungssoftware codiert und heruntergeladen wird, und eine Verarbeitung, durch die während des Einloggens gesendete und empfangene Informationen in der Login-Historien-Datenbank 33 registriert werden, auszuführen. Die Verarbeitungskomponente 31 weist eine Login-Authentifizierungskomponente 34, eine Login-Historien-Verwaltungskomponente 35, eine Software-Verwaltungskomponente 36, eine Lizenzschlüssel-Ausstellungskomponente 37, eine Codierungskomponente 38 und eine Serverinformationen-Sende-/Empfangskomponente 39 auf.
  • Die Login-Authentifizierungskomponente 34 weist die Funktion auf, einem über das Internet 5 zugreifenden externen Endgerät (in diesem Beispiel die Updatevorrichtung 4) mittels einer Abgleichbeurteilung der von dort empfangenen Account-Informationen (z. B. dem Account-Namen, einem Passwort usw.) die Erlaubnis zum Einloggen zu authentifizieren.
  • Die Login-Historien-Verwaltungskomponente 35 funktioniert derart, dass sie entsprechend des durch die Login-Authentifizierungskomponente 34 zum Einloggen authentifizierten Login-Accounts die Historie des Datums und der Uhrzeit des betreffenden Einloggens, den Inhalt der währenddessen erfolgten Bedienung und die gesendeten und empfangenen Informationen in der Login-Historien-Datenbank 33 registriert und verwaltet.
  • Die Software-Verwaltungskomponente 36 funktioniert derart, dass sie für die Softwarespeicherkomponente 32 das Ablegen und Erwerben der Steuerungssoftware verwaltet. Konkret führt sie eine Verarbeitung zum Erwerben der Steuerungssoftware aus, die der Downloadanforderung von dem zum Einloggen authentifizierten externen Endgerät entspricht. Ferner führt die Software-Verwaltungskomponente 36 auch eine Verarbeitung zum Ablegen einer von einem Betreiber des betreffenden Cloud-Servers 3 (Verwalter auf der Seite des Herstellers; nicht speziell dargestellt) hochgeladenen Steuerungssoftware in der Software-Speicherkomponente 32 aus. Die zu diesem Zeitpunkt abgelegte Steuerungssoftware ist nicht codiert, und als Versionszahl kann entweder nur die aktuellste Version, oder es können auch mehrere verschiedene Versionszahlen individuell ablegt werden.
  • Die Lizenzschlüssel-Ausstellungskomponente 37 funktioniert derart, dass sie jedes Mal, wenn sie von einem externen Endgerät eine Downloadanforderung empfängt, einen individuellen Lizenzschlüssel (Schlüsseldaten) ausstellt. Der Lizenzschlüssel wird z. B. mit einer bestimmten Anzahl von Zeichen (bei dem im Folgenden in 7 dargestellten Beispiel sind es acht Zeichen) zufällig ausgewählter Großbuchstaben und Kleinbuchstaben umfassender alphanumerischer Textdaten automatisch generiert.
  • Die Codierungskomponente 38 funktioniert derart, dass sie eine von der Software-Verwaltungskomponente 36 entsprechend der Downloadanforderung von einem externen Endgerät erworbene Steuerungssoftware mit dem von der Lizenzschlüssel-Ausstellungskomponente 37 ausgestellten Lizenzschlüssel als Codierungsschlüssel (Schlüsseldaten) codiert. Bei der Codierungsverarbeitung kann bezüglich des Lizenzschlüssels einfach ein Passwort genutzt werden, das zum Zeitpunkt der Decodierung angefordert wird, es kann jedoch auch eine den Dateninhalt des Lizenzschlüssels widerspiegelnde Codierungsverarbeitung durchgeführt werden.
  • Die Serverinformationen-Sende-/Empfangskomponente 39 funktioniert derart, dass sie einerseits auf einem Protokoll der internetkommunikation beruhend über das Internet 5 die Account-Informationen, die Bedienungsinformationen während des Einloggens und das später erwähnte Softwareupdate (die Geräteinformationen) von dem externen Endgerät empfängt, und andererseits die codierte Steuerungssoftware, den Lizenzschlüssel usw. über das Internet 5 an das zum Einloggen authentifizierte externe Endgerät sendet.
  • Übrigens werden die konkreten Verarbeitungsschritte der die vorstehenden jeweiligen Funktionskomponenten nutzenden Verarbeitungskomponente 31 im Folgenden genau beschrieben (vgl. die im Folgenden beschriebene 4 und 6).
  • <Konkreter Aufbau der Updatevorrichtung>
  • 3 zeigt ein Systemblockbild, das den internen Aufbau der vorstehenden Updatevorrichtung 4 darstellt. In dem in 3 dargestellten Beispiel besteht die Updatevorrichtung 4 aus einem wie vorstehend erwähnten Mehrzweck-Notebook, das mittels einer auf seinem OS laufenden Tool Application 41 verschiedene Verarbeitungen bezüglich der Steuerungssoftware und der Gerätinformationen ausführt. Die auf der Updatevorrichtung 4 laufende Tool Application 41 weist jeweilige Softwareblöcke einer Internetinformationen-Sende-/Empfangskomponente 42, einer Login-Antragskomponente 43, einer Lizenzschlüsselanzeigekomponente 44, einer Lizenzschlüsseleingabekomponente 45, einer Decodierungskomponente 46 und einer USB-Informationen-Sende-/Empfangskomponente 47 auf.
  • Die Internetinformationen-Sende-/Empfangskomponente 42 (Empfängerkomponente) funktioniert derart, dass sie einerseits auf einem Protokoll der Internetkommunikation beruhend über das Internet 5 die Account-Informationen, die Bedienungsinformationen während des Einloggens, die später erwähnten Softwareupdateinformationen usw. an den Cloud-Server 3 sendet, und andererseits die codierte Steuerungssoftware, den Lizenzschlüssel usw. über das Internet 5 von dem eingeloggten Cloud-Server 3 empfängt. Bei dem Beispiel der vorliegenden Ausführungsform löscht im Übrigen die Internetinformationen-Sende-/Empfangskomponente 42 nach dem Senden der den Lizenzschlüssel umfassenden später beschriebenen Softwareupdateinformationen an den Cloud-Server 3 die betreffenden Softwareupdateinformationen mitsamt des Lizenzschlüssels von den verschiedenen Speichervorrichtungen (Speicher, HDD (Hard Disk Drive), externe Speichervorrichtung usw.; nicht speziell dargestellt).
  • Die Login-Antragskomponente 43 funktioniert derart, dass sie für den über das Internet 5 zugreifenden Cloud-Server 3 Account-Informationen sendet und die Erlaubnis zum Einloggen beantragt.
  • Die Lizenzschlüsselanzeigekomponente 44 (Ausgabekomponente) funktioniert derart, dass sie einerseits die codierte Steuerungssoftware und andererseits den von dem Cloud-Server 3 heruntergeladenen Lizenzschlüssel auf einer Anzeigevorrichtung wie einem Display usw. (nicht speziell dargestellt) anzeigt. Bei der vorliegenden Ausführungsform zeigt die Lizenzschlüsselanzeigekomponente 44 im Übrigen den Lizenzschlüssel nur während des Einloggens an, bei dem der Lizenzschlüssel heruntergeladen wurde und sie löscht den Lizenzschlüssel nach dem Beenden des Einloggens von den verschiedenen Speichervorrichtungen.
  • Ferner funktionieren bei dem Beispiel der vorliegenden Ausführungsform die Internetinformationen-Sende-/Empfangskomponente 42, die Login-Antragskomponente 43 und die Lizenzschlüsselanzeigekomponente 44 nur dann, wenn die betreffende Updatevorrichtung 4 nicht über das USB-Kabel 27 mit anderen Steuergeräten verbunden ist, und außerdem während sie mit dem Internet 5 verbunden sind.
  • Die Lizenzschlüsseleingabekomponente 45 (Eingabekomponente) funktioniert derart, dass sie über eine Eingabevorrichtung wie eine Tastatur usw. (nicht speziell dargestellt) die Eingabe des Lizenzschlüssels von einem Benutzer annimmt.
  • Die Decodierungskomponente 46 funktioniert derart, dass sie die im codierten Zustand von der Internetinformationen-Sende-/Empfangskomponente 42 empfangene Steuerungssoftware auf der Basis des Lizenzschlüssels, dessen Eingabe die Lizenzschlüsseleingabekomponente 45 angenommen hat, decodiert. Bei der Decodierungsverarbeitung erfolgt in Übereinstimmung mit dem gleichen Codierungsalgorithmus wie die Codierungskomponente 38 des Cloud-Servers 3, eine Decodierungsverarbeitung mittels des Lizenzschlüssels.
  • Die USB-Informationen-Sende-/Empfangskomponente 47 (Updatekomponente) funktioniert einerseits derart, dass sie beruhend auf dem Protokoll der USB-Kommunikation die Steuerungssoftware im decodierten Zustand und deren Sendeadresseninformationen (z. B. die ID der upzudatenden Maschine) über das USB-Kabel 27 an die übergeordnete Steuervorrichtung 21 sendet, und andererseits die Maschineninformationen der jeweiligen Steuergeräte, die mit dem Feldnetzwerk 26 verbunden sind, über das USB-Kabel 27 von der übergeordneten Steuervorrichtung 21 empfängt. Auch wenn dies nicht speziell dargestellt ist, funktioniert die USB-Informationen-Sende-/Empfangskomponente 47 (Updatekomponente) einerseits derart, dass sie beruhend auf dem Protokoll der USB-Kommunikation die Steuerungssoftware im decodierten Zustand und deren Sendeadresseninformationen (z. B. die ID der upzudatenden Maschine) über das USB-Kabel an die Motorsteuervorrichtung 22 sendet, und andererseits die Maschineninformationen der jeweiligen Steuergeräte, die mit dem Feldnetzwerk 26 verbunden sind, über das USB-Kabel von der Motorsteuervorrichtung 22 empfängt. Bei dem Beispiel der vorliegenden Ausführungsform löscht im Übrigen die USB-Informationen-Sende-/Empfangskomponente 47 nach dem Senden der Steuerungssoftware im decodierten Zustand die Steuerungssoftware aus den verschiedenen Speichervorrichtungen.
  • Ferner funktionieren bei dem Beispiel der vorliegenden Ausführungsform die Lizenzschlüsseleingabekomponente 45, die Decodierungskomponente 46 und die USB-Informationen-Sende-/Empfangskomponente 47 nur dann, wenn die betreffende Updatevorrichtung 4 nicht mit dem Internet 5 verbunden ist, und außerdem während sie über das USB-Kabel 27 mit der übergeordneten Steuervorrichtung 21 (oder der Motorsteuervorrichtung 22) verbunden ist.
  • Übrigens werden die konkreten Verarbeitungsschritte der die vorstehenden jeweiligen Funktionskomponenten nutzenden Tool Application 41 im Folgenden genau beschrieben (vgl. die im Folgenden beschriebene 4, 5 und 6).
  • Bezüglich der übergeordneten Steuervorrichtung 21 kann ferner, auch wenn dies nicht speziell dargestellt ist, von den mit dem Feldnetzwerk 26 (z. B. MECHATROLlNK® oder Σ-LINK®) verbundenen sämtlichen Steuergeräten (Motorsteuervorrichtung 22 einschließlich der übergeordneten Steuervorrichtung 21, Encoder 24 und externer Sensor 25) an ein bestimmtes Gerät die Steuerungssoftware gesendet und die Updatesequenz ausgeführt werden. Ferner kann die übergeordnete Steuervorrichtung 21 von den mit dem Feldnetzwerk 26 verbundenen sämtlichen Steuergeräten für ein bestimmtes Gerät jeweils die Geräteinformationen anfordern und empfangen. Als diese Geräteinformationen gibt es z. B. den Gerätetyp oder die Seriennummer des Steuergeräts.
  • Ferner kann bezüglich der Motorsteuervorrichtung 22, auch wenn dies nicht speziell dargestellt ist, von den mit dem Feldnetzwerk 26b (bei dem in der vorstehenden 1 dargestellten Beispiel Σ-LINK®) verbundenen sämtlichen Steuergeräten (Encoder 24 einschließlich der Motorsteuervorrichtung 22 und externer Sensor 25) an ein bestimmtes Gerät die Steuerungssoftware gesendet und die Updatesequenz ausgeführt werden. Ferner kann die Motorsteuervorrichtung 22 von den mit dem Feldnetzwerk 26b verbundenen sämtlichen Steuergeräten für ein bestimmtes Gerät jeweils die Geräteinformationen anfordern und empfangen. Als diese Geräteinformationen fungieren z. B. der Gerätetyp oder die Seriennummer des Steuergeräts.
  • <Downloadsequenz der Steuerungssoftware>
  • 4 stellt ein Sequenzdiagramm der Verarbeitungsschritte beim Downloaden der Steuerungssoftware bei dem Softwareverwaltungssystem 1 der vorliegenden Ausführungsform dar. Bei der in 4 dargestellten Downloadsequenz wird mit der Ausführung begonnen, wenn die Updatevorrichtung 4 mit dem Internet 5 verbunden und außerdem mit der übergeordneten Steuervorrichtung 21 (oder der Motorsteuervorrichtung 22) nicht verbunden ist. Im Übrigen werden die jeweiligen Verarbeitungen, die in der Figur von dem Cloud-Server 3 und der Updatevorrichtung 4 ausgeführt werden, durch die CPU (Rechenvorrichtung), die diese jeweils aufweisen, derart gesteuert, dass sie die jeweiligen Funktionskomponenten der Verarbeitungskomponente 31 oder der Tool Application 41 softwaremäßig ausführen (ebenso im Folgenden in 5 und 6).
  • Zunächst wird in Schritt S1 bestätigt, dass die Updatevorrichtung 4 zu diesem Zeitpunkt in einem mit dem Internet 5 verbundenen und außerdem nicht über das USB-Kabel 27 mit der übergeordneten Steuervorrichtung 21 (oder der Motorsteuervorrichtung 22) verbundenen Zustand ist. Ist im Übrigen zu diesem Zeitpunkt die Updatevorrichtung 4 nicht mit dem Internet 5 verbunden, oder ist sie mit der übergeordneten Steuervorrichtung 21 (oder der Motorsteuervorrichtung 22) verbunden, erfolgt eine Fehlermeldung an den Benutzer und die Verarbeitung der Tool Application 41 wird beendet (nicht speziell dargestellt).
  • Als Nächstes greift in Schritt S2 die Updatevorrichtung 4 mittels der Internetinformationen-Sende-/Empfangskomponente 42 und der Login-Antragskomponente 43 über das Internet 5 auf den Cloud-Server 3 zu, sendet die Account-Informationen und beantragt das Einloggen.
  • Als Nächstes gleicht in Schritt S3 der Cloud-Server 3 mittels der Serverinformationen-Sende-/Empfangskomponente 39 und der Login-Authentifizierungskomponente 34 die empfangenen Account-Informationen ab und sendet bei der Erlaubnis des Einloggens eine Login-Authentifizierung an die Updatevorrichtung 4. Im Übrigen wird für den Fall, dass zu diesem Zeitpunkt ein Einloggen nicht erlaubt werden kann, an die Updatevorrichtung 4 ein Loginfehler gesendet (nicht speziell dargestellt).
  • Als Nächstes sendet in Schritt S4 die Updatevorrichtung 4 mittels der Internetinformationen-Sende-/Empfangskomponente 42 aufgrund einer Bedienung durch den Benutzer die Download-Anforderung der gewünschten Steuerungssoftware an den Cloud-Server 3.
  • Als Nächstes erwirbt in Schritt S5 der Cloud-Server 3 mittels der Software-Verwaltungskomponente 36 die angeforderte Steuerungssoftware von der Softwareablagekomponente 32.
  • Als Nächstes gibt in Schritt S6 der Cloud-Server 3 mittels der Lizenzschlüsselausstellungskomponente 37 einen Lizenzschlüssel aus.
  • Als Nächstes codiert in Schritt S7 der Cloud-Server 3 mittels der Codierungskomponente 38 die in Schritt S5 erworbene Steuerungssoftware auf der Basis des in Schritt S6 ausgegebenen Lizenzschlüssels.
  • Als Nächstes sendet in Schritt S8 der Cloud-Server 3 mittels der Serverinformationen-Sende-/Empfangskomponente 39 die in Schritt S7 codierte Steuerungssoftware und den in Schritt S6 ausgegebenen Lizenzschlüssel an die Updatevorrichtung 4 (Download).
  • Als Nächstes legt in Schritt S9 die Updatevorrichtung 4 mittels der Internetinformationen-Sende-/Empfangskomponente 42 die empfangene Steuerungssoftware im codierten Zustand in der Speichervorrichtung ab.
  • Als Nächstes zeigt in Schritt S10 die Updatevorrichtung 4 mittels der Lizenzschlüsselanzeigekomponente 44 den empfangenen Lizenzschlüssel auf z.B. dem Display an. Zu diesem Zeitpunkt überträgt der Benutzer der Updatevorrichtung 4 den angezeigten Lizenzschlüssel handschriftlich z. B. auf einem separaten Notizzettel 7 (vgl. die vorstehende 1 und 3).
  • Als Nächstes sendet in Schritt S11 die Updatevorrichtung 4 mittels der Internetinformationen-Sende-/Empfangskomponente 42 an den Cloud-Server 3 das Beenden des Einloggens.
  • Als Nächstes registriert in Schritt S12 der Cloud-Server 3, nachdem das Einloggen beendet ist, mittels der Login-Historien-Verwaltungskomponente 35 die Historie der bisherigen das Einloggen betreffenden Account-Informationen, des Bedienungsinhalts und der gesendeten/empfangenen Informationen usw. in der Login-Historien-Datenbank 33.
  • Als Nächstes löscht in Schritt S13 die Updatevorrichtung 4 mittels der Lizenzschlüsselanzeigekomponente 44 den Lizenzschlüssel von der Speichervorrichtung. Damit wird die Downloadsequenz beendet.
  • <Updatesequenz der Steuerungssoftware>
  • Als Nächstes ist in 5 ein Sequenzdiagramm der Verarbeitungsschritte beim Updaten der Steuerungssoftware bei dem Softwareverwaltungssystem 1 der vorliegenden Ausführungsform dargestellt. Bei der in 5 dargestellten Updatesequenz wird mit der Ausführung begonnen, wenn die Updatevorrichtung 4 mit dem Internet 5 nicht verbunden und außerdem mit der übergeordneten Steuervorrichtung 21 (oder der Motorsteuervorrichtung 22) über das USB-Kabel 27 verbunden ist. Bei der vorliegenden Ausführungsform wird im Übrigen die Sequenz in der Annahme erläutert, dass die Updatevorrichtung 4 mit der übergeordneten Steuervorrichtung 21 verbunden ist (im Folgenden ebenso bei 6).
  • Zunächst wird in Schritt S101 bestätigt, dass sich die Updatevorrichtung 4 zu diesem Zeitpunkt in einem über das USB-Kabel 27 mit der übergeordneten Steuervorrichtung 21 verbundenen und außerdem mit dem Internet 5 nicht verbundenen Zustand befindet. Ist im Übrigen zu diesem Zeitpunkt die Updatevorrichtung 4 nicht über das USB-Kabel 27 mit der übergeordneten Steuervorrichtung 21 verbunden oder aber mit dem Internet 5 verbunden, erfolgt eine Fehlermeldung an den Benutzer und die Verarbeitung der Tool Application 41 wird beendet (nicht speziell dargestellt).
  • Als Nächstes nimmt in Schritt S102 die Updatevorrichtung 4 mittels der Lizenzschlüsseleingabekomponente 45 über eine Tastatur usw. die Eingabe des Lizenzschlüssels von einem Benutzer an. Zu diesem Zeitpunkt gibt der Benutzer der Updatevorrichtung 4 den mit Referenz auf den Notizzettel 7 usw. in Schritt S10 der Downloadsequenz handschriftlich übertragenen Lizenzschlüssel ein (vgl. 1 und 3).
  • Als Nächstes decodiert in Schritt S103 die Updatevorrichtung 4 mittels der Decodierungskomponente 46 die in Schritt S9 der Downloadsequenz abgelegte Steuerungssoftware im codierten Zustand auf der Basis des in Schritt S102 eingegebenen Lizenzschlüssels. Ist dabei der Lizenzschlüssel nicht kompatibel mit der codierten Software (d. h. wenn ein Decodieren nicht möglich ist), wird nachdem eine bestimmte Fehlermitteilungsverarbeitung durchgeführt wurde, in Schritt S102 eine Neueingabe des Lizenzschlüssels angefordert.
  • Als Nächstes sendet in Schritt S104 die Updatevorrichtung 4 mittels der USB-Informationen-Sende-/Empfangskomponente 47 die in Schritt S103 decodierte Steuerungssoftware über das USB-Kabel 27 an die übergeordnete Steuervorrichtung 21. Im Zusammenhang damit wird eines der mit dem Feldnetzwerk 26 verbundenen Steuergeräte als Updateadresse der Steuerungssoftware bestimmt.
  • Als Nächstes sendet in Schritt S105 die übergeordnete Steuervorrichtung 21 an das als Updateadresse bestimmte Steuergerät die in Schritt S104 empfangene Steuerungssoftware über das Feldnetzwerk 26 und lässt die Updatesequenz (Updateverarbeitung bei dem Steuergerät) ausführen.
  • Als Nächstes fordert in Schritt S106 die Updatevorrichtung 4 mittels der USB-Informationen-Sende-/Empfangskomponente 47 bei der übergeordneten Steuervorrichtung 21 das Senden der Geräteinformationen der jeweiligen Steuergeräte an.
  • Als Nächstes sendet in Schritt S107 die übergeordnete Steuervorrichtung 21 von den zu diesem Zeitpunkt mit dem Feldnetzwerk 26 verbundenen jeweiligen Steuergeräten die jeweiligen Geräteinformationen.
  • Als Nächstes legt in Schritt S108 die Updatevorrichtung 4 die gesamten Informationen aus den in Schritt S107 empfangenen Geräteinformationen, dem aus der Updatehistorie der Steuerungssoftware (einschließlich der Updatedetails der Versionszahl und deren Updatezeitpunkt) bestehenden Software-Update-Ergebnis und dem Lizenzschlüssel als Software-Update-Informationen in einer Speichervorrichtung ab. Im Übrigen werden die Software-Update-Informationen für jedes einzelne Steuergerät erzeugt, wobei von diesen der Lizenzschlüssel abgelegt wird, der der in den einzelnen Steuergeräten abgelegten Steuerungssoftware entspricht.
  • Als Nächstes löscht in Schritt S109 die Updatevorrichtung 4 mittels der USB-Informationen-Sende-/Empfangskomponente 47 die Steuerungssoftware im decodierten Zustand aus der Speichervorrichtung (der Lizenzschlüssel behält den abgelegten Zustand in der in den Software-Update-Informationen umfassten Form bei). Damit wird die Updatesequenz beendet.
  • Im Übrigen kann für den Fall, dass in der Downloadsequenz mehrere Steuerungssoftware im codierten Zustand abgelegt sind, beim Löschen in Schritt S109 nur die Steuerungssoftware im decodierten Zustand gelöscht wird, die unmittelbar zuvor upgedated wurde, während die übrige, noch nicht upgedatete Steuerungssoftware im decodierten Zustand im abgelegten Zustand bleibt. Andererseits können auch nach der Fertigstellung des Updates der gesamten Steuerungssoftware im decodierten Zustand alle auf einmal gelöscht werden, oder beim Beenden der betreffenden Tool Application die gesamte Steuerungssoftware im decodierten Zustand gelöscht werden.
  • <Uploadsequenz der Software-Update-Informationen>
  • Dann stellt 6 bei dem Software-Verwaltungssystem 1 der vorliegenden Ausführungsform ein Sequenzdiagramm der Verarbeitungsschritte beim Uploaden der Software-Update-Informationen der mit dem Datenfeldnetzwerk 26 verbundenen Steuergeräte auf den Cloud-Server 3 dar. Bei der in 6 dargestellten Uploadsequenz beginnt die Ausführung in dem abgelegten Zustand der aus der in 5 dargestellten Updatesequenz resultierenden Software-Update-Informationen, und wenn außerdem die Updatevorrichtung 4 nicht mit dem Internet 5 verbunden ist und sie über das USB-Kabel 27 mit der übergeordneten Steuervorrichtung 21 verbunden ist.
  • Zunächst wird in Schritt S201 bestätigt, dass sich die Updatevorrichtung 4 zu diesem Zeitpunkt in einem mit dem Internet 5 verbundenen und außerdem nicht über das USB-Kabel 27 mit der übergeordneten Steuervorrichtung 21 verbundenen Zustand befindet. Ist im Übrigen zu diesem Zeitpunkt die Updatevorrichtung 4 nicht mit dem Internet 5 verbunden, oder ist sie mit der übergeordneten Steuervorrichtung 21 verbunden, erfolgt eine Fehlermeldung an den Benutzer und die Verarbeitung der Tool Application 41 wird beendet (nicht speziell dargestellt).
  • Als Nächstes greift in Schritt S202 die Updatevorrichtung 4 mittels der Internetinformationen-Sende-/Empfangskomponente 42 und der Login-Antragskomponente 43 über das Internet 5 auf den Cloud-Server 3 zu, sendet die Account-Informationen und beantragt das Einloggen.
  • Als Nächstes gleicht in Schritt S203 der Cloud-Server 3 mittels der Serverinformationen-Sende-/Empfangskomponente 39 und der Login-Authentifizierungskomponente 34 die empfangenen Account-Informationen ab und sendet bei der Erlaubnis des Einloggens eine Login-Authentifizierung an die Updatevorrichtung 4. Im Übrigen wird für den Fall, dass zu diesem Zeitpunkt ein Einloggen nicht erlaubt werden kann, an die Updatevorrichtung 4 ein Loginfehler gesendet (nicht speziell dargestellt).
  • Als Nächstes sendet in Schritt S204 die Updatevorrichtung 4 mittels der Internetinformationen-Sende-/Empfangskomponente 42 die in Schritt S108 der Updatesequenz abgelegten Software-Update-Informationen an den Cloud-Server 3 (Upload).
  • Als Nächstes bringt in Schritt S205 der Cloud-Server 3 mittels der Serverinformationen-Sende-/Empfangskomponente 39 und der Login-Historien-Verwaltungskomponente 35 die empfangenen Software-Update-Informationen in Entsprechung mit den Account-Informationen des Einloggens und führt eine Registrierung in der Login-Historien-Datenbank 33 durch (vgl. die im Folgenden beschriebene 7).
  • Als Nächstes löscht in Schritt S206 die Updatevorrichtung 4 mittels der Internetinformationen-Sende-/Empfangskomponente 42 die Software-Update-Informationen aus der Speichervorrichtung.
  • Als Nächstes sendet in Schritt S207 die Updatevorrichtung 4 mittels der Internetinformationen-Sende-/Empfangskomponente 42 an den Cloud-Server 3 das Beenden des Einloggens. Damit wird die Uploadsequenz beendet.
  • <Beispiel des Registrierungsinhalts einer Login-Historien-Datenbank>
  • In 7 ist abstrakt ein Beispiel des in Schritt S12 der Downloadsequenz und in Schritt S205 der Uploadsequenz registrierten Registrierungsinhalts der Login-Historien-Datenbank 33 und deren Anzeige dargestellt. Bei dem in 7 dargestellten Beispiel, handelt es sich um die Erstellung eines Registrierungsinhalts, der insgesamt je einer Produktionswerkstatt 6 (vgl. 1) entspricht, wobei nur als mit der Produktionswerkstatt 6 in Beziehung stehende Personen anerkannte Login-Benutzer zu diesem Registrierungsinhalt Zugriff haben, ihn prüfen und updaten können. Im Hinblick auf die Anzeige des Registrierungsinhalts dieses Beispiels sind die einzelnen Informationsposten, das „Logindatum“, der „Loginbenutzer“, der „Gerätetyp“, die „Softwareversion (Versionsnummer)“, der „Lizenzschlüssel“, das „Downloaddatum“ und das „Updatedatum“, jeweils entsprechend der „Nr.“ registriert, die die zeitliche Reihenfolge der bisherigen Loginbedienungen ausdrückt.
  • Dadurch, dass in der Login-Historien-Datenbank 33 zusammen mit den Informationen bezüglich des Einloggens in den Cloudserver 3 auch z. B. Informationen bezüglich der vom Benutzer verwendeten Maschinenanlage 2 und deren Steuerungssoftware registriert werden, können die Informationen des Registrierungsinhalts als sogenannte rückverfolgbare Informationen bezüglich der Historie der Maschinenanlage 2 verwendet werden. Auch wenn dies nicht speziell dargestellt ist, kann der Benutzer der Updatevorrichtung 4, sofern er in den Cloud-Server 3 eingeloggt ist, die rückverfolgbaren Informationen zu einem beliebigen Zeitpunkt in einem eingestellten Bereich (die gesamte Produktionswerkstatt 6 oder einzelne Maschinenanlagen) prüfen, den Updatezustand der einzelnen Steuergeräte feststellen und einen neuen Lizenzschlüssel erwerben.
  • Bei dem dargestellten Beispiel der Login-Historien-Datenbank 33 können sich mehrere unterschiedliche Benutzer jeweils mit individuell erteilten Login-Accounts einloggen, wobei die Anzeige des Registrierungsinhalts mit dem diesem Account entsprechenden Login-Bedienungsstandard erfolgt, wobei jedoch keine Beschränkung hierauf besteht. Ferner kann auch je nach Einstellung der Login-Historien-Verwaltungskomponente 35 eine Registrierung oder Anzeige entsprechend den einzelnen Benutzern, oder eine Registrierung und Anzeige im Tabellenformat erfolgen, sodass sämtliche Typen von Steuergeräten überblickt werden können.
  • <Wirkungen der vorliegenden Ausführungsform>
  • Wie vorstehend erläutert, ist bei dem Softwareverwaltungssystem 1 der vorliegenden Ausführungsform eine Updatevorrichtung 4 vorgesehen, die in einem mit dem Internet 5 verbundenen Zustand von dem Cloud-Server 3 die Steuerungssoftware empfängt und ablegt, und in einem mit dem Feldnetzwerk 26 verbundenen Zustand die abgelegte Steuerungssoftware an die Steuergeräte oder die Sensoren sendet und updated. Bei der vorliegenden Ausführungsform besteht die Updatevorrichtung 4 aus einem transportier- und bewegbaren Notebook, und lädt im mit dem Internet 5 verbundenen Zustand die erforderliche höhere Version der Steuerungssoftware von dem Cloud-Server 3 herunter. Anschließend sendet die Updatevorrichtung 4 in einem mit dem Feldnetzwerk 26 über das separate USB-Kabel 27 und die übergeordnete Steuervorrichtung 21 oder das USB-Kabel und die Motorsteuervorrichtung 22 (nicht dargestellt) indirekt umgeschalteten Verbindungszustand die Steuerungssoftware an die Steuergeräte, sodass sie upgedated werden. Auf diese Weise kann durch die jeweilige Umschaltungsverbindung der Updatevorrichtung 4 mit dem Feldnetzwerk 26 und dem Internet 5, während ein dauerhafter physikalischer Isolierungszustand zwischen den beiden Netzwerken aufrechterhalten wird, mittels der heruntergeladenen Steuerungssoftware upgedatet werden. Dadurch kann auch bei der Maschinenanlage 2 als einem nicht mit außen verbundenen Steuersystem eine Steuerungssoftware sicher und einfach upgedated werden.
  • Im Übrigen erfolgt bei dem in 1 dargestellten Beispiel der vorliegenden Ausführungsform im direkten Verbindungszustand der Updatevorrichtung 4 mit der übergeordneten Steuervorrichtung 21 über das USB-Kabel 27 die Updatesequenz der Steuerungssoftware, wobei hierauf jedoch keine Beschränkung besteht. Des Weiteren kann die Updatevorrichtung 4 auch im über ein separates USB-Kabel mit der Motorsteuervorrichtung 22 direkt verbundenen Zustand diese Updatesequenz ausführen. In diesem Fall wird, ohne dass eine Updatesequenz für die übergeordnete Steuervorrichtung 21 erfolgt, nur die Updatesequenz für die untergeordneten Steuergeräte (Encoder 24, externer Sensor 25) ab der Motorsteuervorrichtung 22 durchgeführt.
  • Ferner führt bei der vorliegenden Ausführungsform insbesondere die Updatevorrichtung 4 die Verarbeitung der Tool Application 41 nur im entweder mit dem Feldnetzwerk 26 oder mit dem Internet 5 verbundenen Zustand aus. Dadurch funktioniert die Updatevorrichtung 4 nur bei einer separaten Verbindung, während bei einer gleichzeitigen Verbindung mit dem Feldnetzwerk 26 und dem Internet 5 die Verarbeitung nicht ausgeführt wird, sodass der Isolierungszustand zwischen den zwei Netzwerken zuverlässig aufrechterhalten und die Sicherheitsfunktion des Feldnetzwerks 26 der Maschinenanlage 2 verbessert werden kann. In diesem Fall sollte die Updatevorrichtung 4 ein mobiles Informationsendgerät sein, bei dem beides, sowohl eine USB-Verbindung als auch eine Internetverbindung möglich ist und das leicht transportier- und bewegbar ist, wobei diese abgesehen von einem Mehrzweck-Notebook wie bei der vorliegenden Ausführungsform auch z. B. ein Aufbau als Engineering-Tool usw. möglich ist.
  • Aufgrund des Sensors kann es sich ferner um eine Anordnung handeln, bei der ein Zugang ohne Demontage der Maschinenanlage 2 nicht möglich ist, sodass selbst wenn es sich bei der Updatevorrichtung 4 um ein leicht transportier- und bewegbares Informationsendgerät handelt, die Handhabung einer direkten Verbindung mit einem derart angeordneten Sensor kompliziert werden kann. Andererseits kann die übergeordnete Steuervorrichtung 21 über das allgemeine Feldnetzwerk 26 ein Senden und Empfangen von Informationen mit anderen Steuergeräten durchführen und ist häufig an einer leicht zugänglichen Position angeordnet. Bei der vorliegenden Ausführungsform ist dabei insbesondere die Updatevorrichtung 4 z. B. über die mit dem USB-Kabel 27 (kein Netzwerk) direkt verbundene übergeordnete Steuervorrichtung 21 indirekt mit dem Feldnetzwerk 26 verbunden. Dadurch kann die Updatevorrichtung 4 einerseits bei der übergeordneten Steuervorrichtung 21 direkt die Steuerungssoftware updaten, und auch bei den Steuergeräten der Motorsteuervorrichtung 22, des Encoders 24 und dem externen Sensor 25 an einer beliebigen Position innerhalb der Maschinenanlage 2 über die übergeordnete Steuervorrichtung 21 und das Feldnetzwerk 26 indirekt die Steuerungssoftware senden und updaten, wodurch der Updatevorgang in den einzelnen Stufen erleichtert wird.
  • Ferner umfasst die Steuerungssoftware häufig technische Informationen, die der Geheimhaltung unterliegen, sodass es zur Verhinderung eines Durchsickerns erforderlich ist, dass nur der Benutzer das Updaten der Steuerungssoftware durchführt, der das Downloaden vorgenommen hat. Bei der vorliegenden Ausführungsform sendet dabei insbesondere der Cloud-Server 3 die auf der Basis eines bestimmten Lizenzschlüssels codierte Steuerungssoftware und den Lizenzschlüssel über das Internet 5 an die Updatevorrichtung 4. Die dies mittels der Internetinformationen-Sende-/Empfangskomponente 42 empfangene Updatevorrichtung 4 zeigt den empfangenen Lizenzschlüssel auf der Lizenzschlüssel-Anzeigekomponente 44 an.
  • Dadurch kann der Benutzer, der das Downloaden vorgenommen hat, den mittels der Anzeige bestätigten Lizenzschlüssel z. B. auf einem separaten Notizzettel 7 aufschreiben, sodass ein Decodieren der Steuerungssoftware nur durch diesen Benutzer möglich ist. Das heißt, selbst wenn die Steuerungssoftware im codierten Zustand nach dem Downloaden z. B. durch einen Dritten widerrechtlich kopiert wird, ist durch keinen anderen als den Benutzer, der das Downloaden vorgenommen hat, eine Decodierung, Verwendung und Analyse möglich, sodass die Geheimhaltung von technischen Informationen und ein widerrechtliches Updaten verhindert werden kann. Im Übrigen ist die Ausgabe des Lizenzschlüssels nicht auf eine Anzeigeausgabe auf z. B. ein Display begrenzt, sondern es kann sich auch um eine Druckausgabe durch z. B. einen Drucker oder eine Sprachausgabe durch ein künstliche Sprachausgabekomponente handeln (nicht speziell dargestellt).
  • Ferner zeigt bei der vorliegenden Ausführungsform insbesondere die Lizenzschlüssel-Anzeigekomponente 44 der Updatevorrichtung 4 den Lizenzschlüssel nur während des Einloggens an, bei dem die Steuerungssoftware und der Lizenzschlüssel empfangen wurde und löscht den Lizenzschlüssel nach Beendigung des Einloggens von der Speichervorrichtung der Updatevorrichtung 4. Daher kann ein Dritter, selbst wenn er nach Beenden des Einloggens unrechtmäßig auf die Updatevorrichtung 4 zugreift, den Lizenzschlüssel nicht auslesen, sodass nur der Benutzer, der die Loginbedienung durchgeführt hat, den Lizenzschlüssel auf dem handgeschriebenen Notizzettel 7 usw. hält und die Geheimhaltung sichergestellt werden kann. Im Übrigen ist es auch möglich, mittels z. B. der OS-Einstellung der Updatevorrichtung 4 den Lizenzschlüssel in Form einer nur für den eingeloggten Benutzer sichtbaren versteckten Datei aufzubewahren.
  • Ferner weist bei der vorliegenden Ausführungsform insbesondere die Updatevorrichtung 4 die Lizenzschlüsseleingabevorrichtung 45 zum Eingeben des Lizenzschlüssels, die Decodierungskomponente 46 zum Decodieren der empfangenen Steuerungssoftware auf der Basis des eingegebenen Lizenzschlüssels und die USB-Informationen-Sende-/Empfangskomponente 47 auf, die die decodierte Steuerungssoftware über das Feldnetzwerk 26 an die Steuergeräte sendet und updatet. Dadurch kann auch ein Benutzer, der den Codierungsalgorithmus nicht kennt, einfach durch das Eingeben des entsprechenden Lizenzschlüssels die Steuerungssoftware automatisch decodieren, und außerdem das Senden an die einzelnen Steuergeräte und Updaten automatisch durchführen.
  • Ferner löscht bei der vorliegenden Ausführungsform insbesondere die USB-Informationen-Sende-/Empfangskomponente 47 der Updatevorrichtung 4 nach dem Updaten die Steuerungssoftware im decodierten Zustand aus der Speichervorrichtung. Dadurch kann, selbst wenn ein Dritter nach der Ausführung des Updatens auf die Updatevorrichtung 4 widerrechtlich zugreift, die Steuerungssoftware im decodierten Zustand nicht ausgelesen werden, sodass die Geheimhaltung der in der Steuerungssoftware enthaltenen technischen Informationen aufrechterhalten und ein unrechtmäßiges Updaten verhindert werden kann. Im Übrigen ist es auch möglich, mittels z. B. der OS-Einstellung der Updatevorrichtung 4 die decodierte Steuerungssoftware in Form einer nur für den eingeloggten Benutzer sichtbaren und bedienbaren versteckten Datei aufzubewahren.
  • Ferner erzeugt bei der vorliegenden Ausführungsform insbesondere der Cloud-Server 3 bei jedem Empfang einer Downloadanforderung der Steuerungssoftware einen neuen Lizenzschlüssel, codiert die Steuerungssoftware auf der Basis dieses Lizenzschlüssels und sendet sie. Dadurch wird ein der jeweiligen Downloadbedienung für die unterschiedliche Steuerungssoftware entsprechender Lizenzschlüssel ausgegeben, sodass selbst z. B. bei der Steuerungssoftware desselben Steuergeräts bei der Decodierung und dem Updaten die Unabhängigkeit der Verwaltung nach Benutzer unterteilt sichergestellt werden kann. Ferner kann ein derartiger Lizenzschlüssel auch als ID für die Identifizierung verwendet werden, mit der bezüglich der heruntergeladenen Datei der Steuerungssoftware nach Login-Account, Benutzer und Downloadbedienung spezifiziert wird. Bei der vorliegenden Ausführungsform erfolgt die Ausgabe eines Lizenzschlüssels pro Downloadbedienung, wobei hierauf jedoch keine Beschränkung besteht. Es ist z. B. auch möglich, dass bei der gleichzeitigen Anforderung eines Downloads unterschiedlicher Steuerungssoftware für die jeweilige Steuerungssoftware jeweils ein Lizenzschlüssel ausgegeben und individuell codiert wird.
  • Ferner sendet bei der vorliegenden Ausführungsform insbesondere der Cloud-Server 3 nur eine Steuerungssoftware für die eingeloggte Updatevorrichtung 4. Dadurch wird ermöglicht, dass nur an die Updatevorrichtung 4 des durch das Einloggen authentifizierten Benutzers die Steuerungssoftware gesendet wird, sodass die Geheimhaltung von technischen Informationen sichergestellt und ein unrechtmäßiges Update verhindert werden kann.
  • Ferner bringt bei der vorliegenden Ausführungsform insbesondere die Login-Historien-Verwaltungskomponente 35 des Cloud-Servers 3 die Softwareinformationen wie den Lizenzschlüssel, den Gerätetyp und die Versionszahl bezüglich der gesendeten Steuerungssoftware in Entsprechung mit dem eingeloggten Benutzer und führt eine Registrierung in der Login-Historien-Datenbank 33 durch. Dadurch können die Softwareinformationen einschließlich des Lizenzschlüssels der heruntergeladenen Steuerungssoftware nach Login-Account, Benutzer und Downloadbedienung getrennt entsprechend verwaltet werden.
  • Ferner erwirbt bei der vorliegenden Ausführungsform insbesondere die Updatevorrichtung 4 die Gerätinformationen wie den Gerätetyp, die Update-Historie usw. bezüglich des Steuergeräts und sendet sie an den Cloud-Server 3, und die Login-Historien-Verwaltungskomponente 35 registriert die empfangenen Geräteinformationen in der Login-Historien-Datenbank 33. Dadurch können die Geräteinformationen bezüglich der einzelnen Steuergeräte auf der Seite der Maschinenanlage 2 in der Login-Historien-Datenbank 33 registriert und diese als Datenbank einzelner rückverfolgbarer Informationen verwaltet werden.
  • Ferner sendet bei der vorliegenden Ausführungsform insbesondere der Cloud-Server 3 an die Updatevorrichtung 4 eines eingeloggten Benutzers die dem Login-Account entsprechende Login-Historie. Dadurch kann spezifiziert werden, welcher andere Benutzer welche Steuerungssoftware heruntergeladen und upgedated hat, sodass eine unrechtmäßige Bedienung usw. erkannt werden kann.
  • <Abgewandelte Beispiele>
  • Im Übrigen sind bei der vorstehend erläuterten Ausführungsform in einem von dem Zweck und der technischen Idee nicht abweichenden Rahmen verschiedene Abwandlungen möglich.
  • <Abgewandeltes Beispiel 1: Individuelle Verbindung von zwei Updatevorrichtungen mit jeweiligen Netzwerken>
  • Bei der vorstehenden Ausführungsform handelt es sich um den Aufbau einer Umschaltverbindung zwischen zwei Netzwerken und einer Updatevorrichtung 4, wobei hierauf jedoch keine Beschränkung besteht. Es ist weiterhin möglich, dass wie in 8 dargestellt, zwei unabhängige Universal-Computer jeweils als Updatevorrichtungen 4A, 4B mit den jeweiligen Netzwerken individuell verbunden sind. In diesem Fall führt die mit dem Internet 5 verbundene erste Updatevorrichtung 4A (erste Software-Updatevorrichtung) die Downloadsequenz der Steuerungssoftware im codierten Zustand und des Lizenzschlüssels von dem Cloud-Server 3 aus, zeichnet die Steuerungssoftware auf einem Wechselmedium 8 (Aufzeichnungsmedium) wie z. B. einem USB-Speicher, einem USB-Anschluss-HDD, einer CD-R, einer DVD-R usw. auf, führt eine Anzeigenausgabe des Lizenzschlüssels aus und veranlasst den Benutzer, diesen auf z. B. einem Notizzettel 7 aufzuschreiben. Dann wird in die über die übergeordnete Steuervorrichtung 21 usw. mit dem Feldnetzwerk 26 verbundene zweite Updatevorrichtung 4B (zweite Software-Updatevorrichtung) die Steuerungssoftware über das Wechselmedium 8 eingelesen und der Benutzer zur Eingabe des Lizenzschlüssels mit Referenz auf den Notizzettel 7 veranlasst.
  • Wie vorstehend erläutert, ist bei einem Softwareverwaltungssystem 1A der vorliegenden Abwandlung die Updatevorrichtung mit dem Internet 5 ständig verbunden und weist die erste Updatevorrichtung 4A, die die von dem Cloud-Server 3 empfangene Steuerungssoftware auf dem bestimmten Wechselmedium 8 aufzeichnet, und die zweite Updatevorrichtung 4B auf, die mit dem Feldnetzwerk 26B ständig verbunden ist und die von dem bestimmten Wechselmedium 8 ausgelesene Steuerungssoftware an die Steuergeräte sendet und updatet. Dadurch kann zwischen der ersten Updatevorrichtung 4A und der zweiten Updatevorrichtung 4B einer getrennten Form, bei der diese jeweils mit einem von zwei Netzwerken ständig verbunden sind, unter Aufrechterhaltung eines dauerhaften physikalischen Isolierungszustandes ein Senden und Empfangen der heruntergeladenen Steuerungssoftware über das Aufzeichnungsmedium einfach weitergegeben werden. In diesem Fall ist es ferner nicht erforderlich, dass die erste Updatevorrichtung 4A oder die zweite Updatevorrichtung 4B transportier- und bewegbar ist, sodass der Aufbau z. B. eines stationären Desktop-PC's möglich ist (nicht speziell dargestellt).
  • <Abgewandeltes Beispiel 2: Sonstiges>
  • Bei der vorstehenden Ausführungsform und dem abgewandelten Beispiel wurde beispielhaft ein Aufbau erläutert, bei dem eine übergeordnete Vorrichtung 21 für eine durch mehrere Motoren 23 angetriebene Maschinenanlage 2 vorgesehen ist und den Antrieb steuert, wobei jedoch hierauf keine Beschränkung besteht. Die vorstehende Ausführungsform und das abgewandelte Beispiel können auch auf einen Aufbau, bei dem die Maschinenanlage 2 nur einen Motor 23 aufweist oder eine übergeordnete Steuervorrichtung 21 für mehrere Maschinenanlagen 2 den Antrieb steuert, angewendet werden.
  • Ferner ist es auch effektiv, wenn die Lizenzschlüssel-Ausstellungskomponente 37 bei der Verarbeitungskomponente 31 des Cloud-Servers 3 in Entsprechung mit dem Login-Account zum Zeitpunkt des Einloggens des Benutzers den Lizenzschlüssels ausstellt. In diesem Fall wird beim Updaten der Steuerungssoftware im decodierten Zustand bei dem Steuergerät der entsprechende Lizenzschlüssel zusammen in dem betreffenden Steuergerät abgelegt. Beim Erwerben der Geräteinformationen wird dann der abgelegte Lizenzschlüssel zusammen erworben. Dadurch kann der Cloud-Server 3 beim Uploaden der Geräteinformationen (Software-Update-Informationen) auf den Cloud-Server 3 den in den Geräteinformationen enthaltenen Lizenzschlüssel mit dem Login-Account usw. abgleichen, sodass der tatsächliche Benutzer, der die Steuerungssoftware der Steuergeräte upgedated hat, spezifiziert werden kann und ein unrechtmäßiger Erwerb der Steuerungssoftware sowie ein unrechtmäßiges Updaten beurteilt werden können.
  • Im Übrigen erfolgte bei der vorstehenden Ausführungsform und den abgewandelten Beispielen die Erläuterung unter der Voraussetzung, dass für ein Feldnetzwerk innerhalb einer bestimmten Einrichtung wie einer Werkstatt eine direkte Verbindung mit einem weiträumigen Netzwerk wie dem Internet selbst ein Sicherheitsproblem darstellt. Demgegenüber kann in Erwiderung auf diese Voraussetzung das Sicherheitsproblem bei einem weiträumigen Netzwerk ausgeräumt werden. Ferner ist auch eine dauerhafte Verbindung zwischen dem Feldnetzwerk und dem Cloud-Server über das weiträumige Netzwerk und ein Senden und Empfangen der Informationen möglich, wenn eindeutig sichergestellt ist, dass auch die Verbindungsadresse des Cloud-Servers kein Sicherheitsproblem darstellt. Um sämtliche Sicherheitsprobleme dieser Art auszuräumen und die Sicherheit eindeutig sicherzustellen, müssen spezifische technische Probleme gelöst werden, und solange diese nicht gelöst sind und Sorgen bezüglich der Sicherheit bestehen bleiben, ist die Anwendung der vorstehenden Ausführungsform und der abgewandelten Beispiele effektiv.
  • Im Übrigen handelt es sich bei der vorstehenden Erläuterung bei Angaben wie „vertikal“, „parallel“, „Ebene“ usw. nicht um Angaben im strengen Sinne. Das heißt, „vertikal“, „parallel“, „Ebene“ bedeutet hier „substantiell vertikal“, „substantiell parallel“, „substantielle Ebene“, wobei konstruktionsmäßige Toleranzen und Abweichungen zulässig sind.
  • Ferner handelt es sich bei der vorstehenden Erläuterung bei der Angabe, dass die äußere Abmessung, Größe, Form, Position usw. „gleichzeitig“, „identisch“, „gleich“, „gleich wie“, „verschieden“ usw. ist, nicht um Angaben im strengen Sinne. Das heißt, „identisch“, „gleich wie“, „verschieden“ usw. bedeutet hier „substantiell gleichzeitig“, „substantiell identisch“, „substantiell gleich“ „substantiell gleich wie“, „substantiell verschieden“ usw., wobei konstruktionsbedingte Toleranzen und Abweichungen zulässig sind.
  • Ferner können abgesehen von dem Vorstehenden Methoden mittels der vorstehenden Ausführungsform und der jeweiligen abgewandelten Beispiele auch geeignet kombiniert genutzt werden. Darüber hinaus können bei der vorstehenden Ausführungsform und den abgewandelten Beispielen auch, selbst wenn dies nicht im Detail anhand von Beispielen dargestellt wurde, in einem vom Zweck nicht abweichenden Umfang verschiedene Änderungen zusätzlich durchgeführt werden.
  • Bezugszeichenliste
  • 1, 1A
    Softwareverwaltungssystem
    2
    Maschinenanlage (Steuersystem)
    3
    Cloud-Server (Softwaredistributionsvorrichtung)
    4
    Updatevorrichtung (Softwareupdatevorrichtung)
    4A
    Erste Updatevorrichtung (erste Softwareupdatevorrichtung)
    4B
    Zweite Updatevorrichtung (zweite Softwareupdatevorrichtung)
    5
    Internet (zweites Netzwerk)
    6
    Produktionswerkstatt
    7
    Notizzettel
    8
    Wechselmedium (Aufzeichnungsmedium)
    21
    übergeordnete Steuervorrichtung (Steuervorrichtung)
    22
    Motorsteuervorrichtung (Steuervorrichtung)
    23
    Motor
    24
    Encoder (Sensor)
    25
    externer Sensor (Sensor)
    26
    Feldnetzwerk (erstes Netzwerk)
    27
    USB-Kabel
    31
    Verarbeitungskomponente
    32
    Softwarespeicherkomponente
    33
    Login-Historien-Datenbank
    34
    Login-Authentifizierungskomponente
    35
    Login-Historien-Verwaltungskomponente
    36
    Softwareverwaltungskomponente
    37
    Lizenzschlüssel-Ausstellungskomponente
    38
    Codierungskomponente
    39
    Serverinformationen-Sende-/Empfangskomponente
    41
    Tool Application
    42
    Internetinformationen-Sende-/Empfangskomponente
    43
    Login-Antragskomponente
    44
    Lizenzschlüssel-Anzeigekomponente (Ausgabekomponente)
    45
    Lizenzschlüssel-Eingabekomponente (Eingabekomponente)
    46
    Decodierungskomponente
    47
    USB-Informationen-Sende-/Empfangskomponente (Updatekomponente)
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • JP 2003029819 [0003]

Claims (17)

  1. Softwareverwaltungssystem (1), aufweisend ein mit einem ersten Netzwerk (26) verbundenes Steuersystem (2) mit einer Steuervorrichtung (21, 22) oder einem Sensor (24), welche mittels der Verarbeitung einer updatefähigen Steuerungssoftware steuerbar sind, eine Softwaredistributionsvorrichtung (3), in der die Steuerungssoftware abgelegt ist und die ausgestaltet ist, über ein zweites Netzwerk (5) die Steuerungssoftware zu senden, und eine Softwareupdatevorrichtung (4), die ausgestaltet ist, im mit dem zweiten Netzwerk (5) verbundenen Zustand die Steuerungssoftware von der Softwaredistributionsvorrichtung (3) zu empfangen und abzulegen, und im mit dem ersten Netzwerk (26) verbundenen Zustand die abgelegte Steuerungssoftware an die Steuervorrichtung (21, 22) oder den Sensor (24) zu senden und ein Update erfolgen zu lassen.
  2. Softwareverwaltungssystem (1) nach Anspruch 1, dadurch gekennzeichnet, dass die Verwaltung nur dann ausgeführt wird, wenn die Softwareupdatevorrichtung (4) mit einem von entweder dem ersten Netzwerk (26) oder dem zweiten Netzwerk (5) verbunden ist.
  3. Softwareverwaltungssystem (1, 1A) nach Anspruch 1, dadurch gekennzeichnet, dass die Softwareupdatevorrichtung (4) eine erste Softwareupdatevorrichtung (4A), die mit dem zweiten Netzwerk (5) verbunden ist und die ausgestaltet ist, von der Softwaredistributionsvorrichtung (3) empfangene Steuerungssoftware auf einem bestimmten Aufzeichnungsmedium aufzuzeichnen, und eine zweite Softwareupdatevorrichtung (4B) aufweist, die mit dem ersten Netzwerk (26) verbunden ist und die ausgestaltet ist, von dem bestimmten Aufzeichnungsmedium ausgelesene Steuerungssoftware über das erste Netzwerk (26) an die Steuervorrichtung (21, 22) oder den Sensor (24) zu senden und upzudaten.
  4. Softwareverwaltungssystem (1, 1A) nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass die Softwareupdatevorrichtung (4) oder die zweite Softwareupdatevorrichtung (4B) über die Steuervorrichtung (21) indirekt mit dem ersten Netzwerk (26) verbunden ist.
  5. Softwareverwaltungssystem (1, 1A) nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass die Softwaredistributionsvorrichtung (3) ausgestaltet ist, eine auf der Basis bestimmter Schlüsseldaten codierte Steuerungssoftware und die entsprechenden Schlüsseldaten zu senden, und die Softwareupdatevorrichtung (4) oder die erste Softwareupdatevorrichtung (4A) eine Empfangskomponente (42), die ausgestaltet ist, von der Softwaredistributionsvorrichtung (3) über das zweite Netzwerk (5) die codierte Steuerungssoftware und die entsprechenden Schlüsseldaten zu empfangen, und eine Ausgabekomponente (44) aufweist, die ausgestaltet ist, die empfangenen Schlüsseldaten auszugeben.
  6. Softwareverwaltungssystem (1, 1A) nach Anspruch 5, dadurch gekennzeichnet, dass die Schlüsseldaten nur während des Einloggens beim Empfangen der Steuerungssoftware und der Schlüsseldaten ausgegeben und nach dem Beenden des Einloggens die Schlüsseldaten gelöscht werden.
  7. Softwareverwaltungssystem (1, 1A) nach Anspruch 5 oder 6, dadurch gekennzeichnet, dass die Softwareupdatevorrichtung (4) oder die zweite Softwareupdatevorrichtung (4B) eine Eingabekomponente (45) zum Eingeben der Schlüsseldaten, eine Decodierungskomponente (46) zum Decodieren der empfangenen Steuerungssoftware auf der Basis der eingegebenen Schlüsseldaten und eine Updatekomponente (47) aufweist, die ausgestaltet ist, die decodierte Steuerungssoftware über das erste Netzwerk (26) an die Steuervorrichtung (21, 22) oder den Sensor (24) zu senden und upzudaten.
  8. Softwareverwaltungssystem (1, 1A) nach Anspruch 7, dadurch gekennzeichnet, dass die Updatekomponente (47) ausgestaltet ist, nach der Ausführung des Updatens die Steuerungssoftware im decodierten Zustand zu löschen.
  9. Softwareverwaltungssystem (1, 1 A) nach einem der Ansprüche 5 bis 8, dadurch gekennzeichnet, dass die Softwaredistributionsvorrichtung (3) ausgestaltet ist, jedes Mal, wenn sie eine Sendeanforderung der Steuerungssoftware empfängt, neue Schlüsseldaten zu erzeugen, und die Steuerungssoftware auf der Basis dieser Schlüsseldaten zu codieren und zu senden.
  10. Softwareverwaltungssystem (1, 1A) nach einem der Ansprüche 1 bis 9, dadurch gekennzeichnet, dass die Softwaredistributionsvorrichtung (3) ausgestaltet ist, die Steuerungssoftware nur an die eingeloggte Softwareupdatevorrichtung (4) zu senden.
  11. Softwareverwaltungssystem (1, 1A) nach Anspruch 10, dadurch gekennzeichnet, dass die Softwaredistributionsvorrichtung (3) ausgestaltet ist, die Schlüsseldaten für den Login-Account des eingeloggten Benutzers zu erzeugen.
  12. Softwareverwaltungssystem (1, 1A) nach Anspruch 10 oder 11, dadurch gekennzeichnet, dass die Softwaredistributionsvorrichtung (3) ausgestaltet ist, die Softwareinformationen bezüglich der gesendeten Steuerungssoftware mit dem eingeloggten Benutzer in Entsprechung zu setzen und in einer Login-Historien-Datenbank (33) zu registrieren.
  13. Softwareverwaltungssystem (1, 1A) nach Anspruch 12, dadurch gekennzeichnet, dass die Softwareupdatevorrichtung (4) ausgestaltet ist, die Geräteinformationen bezüglich der Steuervorrichtung (21, 22) oder des Sensors (24) zu erwerben und an die Softwaredistributionsvorrichtung (3) zu senden, und die Softwaredistributionsvorrichtung (3) ausgestaltet ist, die empfangenen Geräteinformationen in der Login-Historien-Datenbank (33) zu registrieren.
  14. Softwareverwaltungssystem (1, 1A) nach Anspruch 12 oder 13, dadurch gekennzeichnet, dass die Softwaredistributionsvorrichtung (3) ausgestaltet ist, an den eingeloggten Benutzer die diesem Login-Account entsprechende Login-Historie zu senden.
  15. Softwareupdatevorrichtung (4), die ausgestaltet ist, eine auf bestimmten Schlüsseldaten basierend codierte Steuerungssoftware und die entsprechenden Schlüsseldaten zu empfangen und die Steuervorrichtung (21, 22) oder den Sensor (24) die basierend auf den Schlüsseldaten decodierte Steuerungssoftware updaten zu lassen.
  16. Softwareupdateverfahren, bei dem es sich um ein bei einer Softwareupdatevorrichtung (4) nach Anspruch 15 ausgeführtes Softwareupdateverfahren handelt, wobei eine codierte Steuerungssoftware und die entsprechenden Schlüsseldaten empfangen werden, die empfangenen Schlüsseldaten ausgegeben werden, die Schlüsseldaten eingegeben werden, basierend auf den eingegebenen Schlüsseldaten die empfangene Steuerungssoftware decodiert wird, und die Steuervorrichtung (21, 22) oder der Sensor (24) veranlasst werden, die basierend auf den Schlüsseldaten decodierte Steuerungssoftware upzudaten.
  17. Softwareupdateprogramm, bei dem es sich um ein durch eine Rechenvorrichtung, die eine Softwareupdatevorrichtung (4) nach Anspruch 15 aufweist, ausgeführtes Softwareupdateprogramm handelt, wobei die codierte Steuerungssoftware und die entsprechenden Schlüsseldaten empfangen werden, die empfangenen Schlüsseldaten ausgegeben werden, die Schlüsseldaten eingegeben werden, basierend auf den eingegebenen Schlüsseldaten die empfangene Steuerungssoftware decodiert wird, und die Steuervorrichtung (21, 22) oder der Sensor (24) veranlasst wird, die basierend auf den Schlüsseldaten decodierte Steuerungssoftware upzudaten.
DE102018206439.3A 2017-10-03 2018-04-26 Softwareverwaltungssystem, Softwareupdatevorrichtung, Softwareupdateverfahren und Softwareupdateprogramm Pending DE102018206439A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017-193803 2017-10-03
JP2017193803A JP6610639B2 (ja) 2017-10-03 2017-10-03 ソフトウェア管理システム、ソフトウェア更新装置、ソフトウェア更新方法、及びソフトウェア更新プログラム

Publications (1)

Publication Number Publication Date
DE102018206439A1 true DE102018206439A1 (de) 2019-04-04

Family

ID=65727840

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102018206439.3A Pending DE102018206439A1 (de) 2017-10-03 2018-04-26 Softwareverwaltungssystem, Softwareupdatevorrichtung, Softwareupdateverfahren und Softwareupdateprogramm

Country Status (4)

Country Link
US (1) US10664263B2 (de)
JP (1) JP6610639B2 (de)
CN (1) CN109597633B (de)
DE (1) DE102018206439A1 (de)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3985946A1 (de) * 2016-11-11 2022-04-20 ConnectWise, LLC Aktualisierung der konfiguration eines cloud-dienstes
JP7255105B2 (ja) * 2018-08-30 2023-04-11 ブラザー工業株式会社 アプリケーションプログラムおよびデータ転送システム
US11531532B2 (en) * 2019-01-16 2022-12-20 Vmware, Inc. Remote deployment of provisioned packages
JP7069084B2 (ja) * 2019-05-22 2022-05-17 本田技研工業株式会社 ソフトウェア更新装置およびソフトウェア更新方法
WO2021131682A1 (ja) * 2019-12-23 2021-07-01 ソニーグループ株式会社 情報処理装置、情報処理方法、およびプログラム
US11835937B2 (en) 2021-05-12 2023-12-05 Mitsubishi Electric Corporation Non-transitory computer readable medium storing data distribution program, server apparatus, terminal apparatus, and data distribution system
CN116232766B (zh) * 2023-05-06 2023-07-18 中国第一汽车股份有限公司 一种基于ota的数据加密系统及方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003029819A (ja) 2001-07-11 2003-01-31 Dainippon Screen Mfg Co Ltd 保守装置、メンテナンスシステムおよびメンテナンス方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000066977A (ja) * 1998-08-20 2000-03-03 Nec Corp サービス交換方法及びその装置
JP3859490B2 (ja) * 2001-11-13 2006-12-20 株式会社 イオノス 通信路のスイッチ接続制御システム
JP2003202931A (ja) * 2002-01-09 2003-07-18 Toshiba Corp ソフトウェアダウンロードシステム、サーバ装置、端末装置、サーバ制御プログラム、端末制御プログラム、サーバ制御方法、端末制御方法
DE502004007798D1 (de) * 2003-09-30 2008-09-18 Siemens Ag Einräumung eines zugriffs auf ein computerbasiertes objekt
JP4590873B2 (ja) * 2004-01-29 2010-12-01 日本ビクター株式会社 コンテンツ再生装置
EP1892622B1 (de) * 2006-08-08 2013-12-04 Snap-on Equipment Srl a unico socio Verfahren und Einrichtung zur Aktualisierung von Software und/oder zum Sammeln der Betriebsdaten in einer Maschineneinheit
JP2009111758A (ja) * 2007-10-30 2009-05-21 Nippon Telegraph & Telephone East Corp 転送システム及び転送装置
JP5950225B2 (ja) * 2012-01-10 2016-07-13 クラリオン株式会社 サーバ装置、車載端末、情報通信方法および情報配信システム
JP2013145504A (ja) * 2012-01-16 2013-07-25 Canon Inc 配信サーバ、監視装置、画像処理装置、および配信サーバの制御方法、およびプログラム
CN103825737B (zh) * 2013-12-30 2017-05-17 北京金玉衡科技有限责任公司 用于工业控制系统在线升级的安全装置、系统及方法
JP2016200942A (ja) * 2015-04-09 2016-12-01 株式会社東芝 インストール装置およびインストール方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003029819A (ja) 2001-07-11 2003-01-31 Dainippon Screen Mfg Co Ltd 保守装置、メンテナンスシステムおよびメンテナンス方法

Also Published As

Publication number Publication date
JP6610639B2 (ja) 2019-11-27
CN109597633A (zh) 2019-04-09
CN109597633B (zh) 2022-06-07
US20190102160A1 (en) 2019-04-04
US10664263B2 (en) 2020-05-26
JP2019067264A (ja) 2019-04-25

Similar Documents

Publication Publication Date Title
DE102018206439A1 (de) Softwareverwaltungssystem, Softwareupdatevorrichtung, Softwareupdateverfahren und Softwareupdateprogramm
EP3669498B1 (de) Verfahren und steuersystem zum steuern und/oder überwachen von geräten
EP3673623B1 (de) Verfahren und steuersystem zum steuern und/oder überwachen von geräten
DE102017116161A1 (de) Zwei-Faktor-Authentifizierung für Benutzerschnittstelleneinrichtungen in einer Prozessanlage
DE102017116311A1 (de) Authentifizierung und autorisierung zum kontrollieren des zugriffs auf prozesskontrolleinrichtungen in einer prozessanlage
DE102017116139A1 (de) Flottenmanagementsystem für tragbare Wartungswerkzeuge
DE102010011657A1 (de) Verfahren und Vorrichtung zum Bereitstellen mindestens eines sicheren kryptographischen Schlüssels
DE102018214744B4 (de) Edge-Server und Verwaltungsserver
DE102011081804A1 (de) Verfahren und System zum Bereitstellen von gerätespezifischen Betreiberdaten für ein Automatisierungsgerät einer Automatisierungsanlage
DE102015005232B4 (de) Steuern einer Freischaltberechtigung eines Kraftfahrzeugs
DE102012013450A1 (de) Verfahren zum Steuern einer Zugangsberechtigung oder Fahrberechtigung für ein Fahrzeug
DE112013002539T5 (de) Validierung mobiler Einheiten
DE102005015919B4 (de) Zugriffsverfahren auf Device Server eines Maschinennetzwerkes
EP3647887A1 (de) Verfahren und vorrichtung zur weitergabe einer zugriffsinformation für einen zugriff auf ein feldgerät der prozessindustrie
EP3078769B1 (de) Verfahren zur freigabe von maschinenfunktionen an einer spinnereimaschine
DE102014108162A1 (de) Verfahren zur Bedienung eines Feldgerätes vermittels eines Bediengerätes
DE102014214041A1 (de) Informationsverarbeitungsgerät, Informationsverarbeitungsverfahren, Programm, Speichermedium und Informationsverarbeitungssystem
EP3714575B1 (de) Verfahren und system zum steuern und/oder überwachen von geräten
DE102011081803A1 (de) Verfahren und System zum Bereitstellen von gerätespezifischen Eigenschaftsdaten für ein Automatisierungsgerät einer Automatisierungsanlage
EP3557341A1 (de) Verfahren und verwaltungseinrichtung zur optimierung eines industriellen prozesses
DE102010018021A1 (de) Verfahren zum Konfigurieren einer Applikation für ein Endgerät
DE102017209565A1 (de) Numerische Steuerung mit integrierter Nutzerverwaltung
BE1030391B1 (de) Dienstleister-Kunden-Kommunikationssystem mit zentraler Datenspeicherung und -verwaltung, integriertem-synchronisiertem Zeiterfassungssystem sowie lokalen Terminals
EP3339989A1 (de) Verfahren zum überprüfen einer mandantenzuordnung, computerprogrammprodukt und automatisierungssystem mit feldgeräten
DE102019118964B4 (de) Zyklische Fehlerstrom-Überprüfung eines Ladepunktes oder einer Ladestation

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0009445000

Ipc: G06F0008650000