DE102016224819A1 - Verfahren und Vorrichtung für eine Dateisynchronisation basierend auf qualifizierenden Trigger-Aktionen in industriellen Steuervorrichtungen - Google Patents

Verfahren und Vorrichtung für eine Dateisynchronisation basierend auf qualifizierenden Trigger-Aktionen in industriellen Steuervorrichtungen Download PDF

Info

Publication number
DE102016224819A1
DE102016224819A1 DE102016224819.7A DE102016224819A DE102016224819A1 DE 102016224819 A1 DE102016224819 A1 DE 102016224819A1 DE 102016224819 A DE102016224819 A DE 102016224819A DE 102016224819 A1 DE102016224819 A1 DE 102016224819A1
Authority
DE
Germany
Prior art keywords
files
computing device
synchronization
file
subset
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
DE102016224819.7A
Other languages
English (en)
Inventor
Rick Molnar
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.)
ABB Schweiz AG
Original Assignee
ABB Schweiz AG
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 ABB Schweiz AG filed Critical ABB Schweiz AG
Publication of DE102016224819A1 publication Critical patent/DE102016224819A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/275Synchronous replication
    • 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/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/4185Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the network communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/178Techniques for file synchronisation in file systems
    • 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/31From computer integrated manufacturing till monitoring
    • G05B2219/31418NC program management, support, storage, distribution, version, update
    • 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/34376Management nc programs, files
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Manufacturing & Machinery (AREA)
  • Quality & Reliability (AREA)
  • Automation & Control Theory (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Es werden hier spezifische Systeme, Verfahren, Techniken und Vorrichtungen für eine Dateisynchronisation eines industriellen Steuersystems offenbart. Eine beispielhafte Ausführungsform ist ein industrielles Steuersystem mit einer industriellen Steuerung und einer ersten und zweiten Berechnungsvorrichtung. Die zweite Berechnungsvorrichtung umfasst eine zweite nicht-flüchtige Speichervorrichtung, die strukturiert ist zum Speichern von sowohl einem Dateisatz und Synchronisationsanweisungen, und umfasst eine Verarbeitungsvorrichtung, die konfiguriert ist zum Ausführen der Synchronisationsanweisungen, um einen Teilsatz von Dateien aus dem zweiten Dateisatz zu klassifizieren, durch Identifizieren von Dateien, die von der industriellen Steuerung an die zweite Berechnungsvorrichtung transferiert wurden, zum Klassifizieren eines Teil-Teilsatzes von Dateien aus dem Teilsatz von Dateien unter Verwendung eines Satzes von Synchronisationsregeln, Klassifizieren eines Satzes von Synchronisationsdateien aus dem Teil-Teilsatz von Dateien, und Transferieren des Satzes von Synchronisationsdateien von der zweiten Berechnungsvorrichtung an die erste Berechnungsvorrichtung.

Description

  • Querverweis auf verwandte Anmeldung
  • Diese Anmeldung beansprucht die Priorität unter 35 U.S.C. 119(e) aus der provisorischen US-Patentanmeldung mit der Nummer 62/267,165, angemeldet am 14. Dezember 2015, mit dem Titel „Method And Apparatus For File Synchronization Based On Qualifying Trigger Actions In Industrial Control Applications”, die hier in deren Gesamtheit durch Bezugnahme einbezogen ist.
  • Hintergrund
  • Die vorliegende Offenbarung betrifft im Allgemeinen die Dateisynchronisation in einem industriellen Steuersystem. Das Ziel einer Dateisynchronisation im Stand der Technik ist die Sicherstellung, dass Vorrichtungen in einem System Zugriff auf die aktuellste Version aller wichtigen Dateien aufweisen. Existierende industrielle Steuersysteme leiden an einer Anzahl von Problemen und Nachteilen. Es bestehen unerfüllte Bedürfnisse, die eine erhöhte Synchronisationseffizienz, eine reduzierte Speichergröße und das Verhindern einer unbeabsichtigten oder unerwünschten Synchronisation umfassen. Einige Synchronisationsverfahren basieren zum Beispiel auf einem Verhalten und Verteilen der aktuellsten Version einer Datei unter Verwendung der Chronologie eines Zeitstempels in einem System von Vorrichtungen oder Knoten. Einige Synchronisationsverfahren überprüfen alle potentiellen Dateien, die an unterschiedlichen Vorrichtungen in dem Steuersystem gespeichert sind. Die Version einer Datei, die als eine zu synchronisierende Quellendatei verwendet werden soll, wird durch den Wert des Zeitstempels der Datei identifiziert. Wenn eine Vorrichtung des Steuersystems eine Datei aufweist und eine andere Vorrichtung nicht, wird diese Datei alternativ zu der Vorrichtung kopiert, von der bestimmt wird, die Datei nicht zu enthalten. Eine andere normale Praxis im Stand der Technik ist die Durchführung einer Zeitstempelvergleichsverarbeitung an allen potentiellen Dateien, wofür große Dateimengen gespeichert und verarbeitet werden müssen. Wenn die Anzahl von Knoten in dem industriellen Steuersystem ansteigt, wachsen die Datenspeicher- und Verarbeitungsanforderungen exponentiell an. Es gibt einen signifikanten Bedarf an den spezifischen Vorrichtungen, Verfahren, Systemen und Techniken, die hier offenbart sind.
  • Offenbarung exemplarischer Ausführungsformen
  • Zum Zweck der klaren, knappen und exakten Erläuterung von nicht beschränkenden beispielhaften Ausführungsformen der Offenbarung, der Art und Weise und des Prozesses der Durchführung und Verwendung derselben, und zur praktischen Befähigen, der Durchführung und Verwendung derselben, wird nun auf bestimmte beispielhafte Ausführungsformen verwiesen, einschließlich jener, die in den Figuren dargestellt sind, und eine spezifische Sprache wird verwendet, um diese zu erläutern. Es wird jedoch verstanden, dass keine Beschränkung des Umfangs der vorliegenden Offenbarung dadurch erzeugt wird, und dass die vorliegende Offenbarung derartige Änderungen, Modifikationen und weitere Anwendungen der beispielhaften Ausführungsformen umfasst, die einem Durchschnittsfachmann im Zuge der vorliegenden Offenbarung ersichtlich sind.
  • Zusammenfassung
  • Beispielhafte Ausführungsformen umfassen spezifische System, Verfahren, Techniken und Vorrichtungen für ein industrielles Steuersystem. Weitere Ausführungsformen, Formen, Aufgaben, Merkmale, Vorteile, Aspekte und Vorzüge der Offenbarung werden aus der folgenden Beschreibung und den Zeichnungen ersichtlich werden.
  • Kurze Beschreibung der Zeichnungen
  • 1 zeigt ein beispielhaftes industrielles Steuersystem.
  • 2 ist ein Blockdiagramm zur Darstellung der Speichervorrichtung eines beispielhaften industriellen Steuersystems.
  • 3 ist ein Flussdiagramm zur Darstellung eines beispielhaften Synchronisationsprozesses für ein industrielles Steuersystem.
  • Detaillierte Beschreibung von Ausführungsformen
  • Bezugnehmend auf 1 wird ein beispielhaftes industrielles Steuersystem 100 mit einer Vielzahl von Berechnungsvorrichtungen 110 und 120 und einer industriellen Steuerung 130 dargestellt. Es wird verstanden, dass eine industrielle Steuerung 130 in einer Vielzahl von Szenarien implementiert werden kann, einschließlich einer programmierbaren Logiksteuerung (engl. programmable logic controller bzw. PLC), einem Überwachungssteuer- und Datenerfassungssystem (engl. supervisory control and data acquisition system bzw. SCADA), oder einem verteilten Steuersystem (engl. distributed control system bzw. DCS), um nur einige Beispiele zu nennen. In anderen Ausführungsformen umfasst das System 100 zusätzliche Berechnungsvorrichtungen, wobei jede Vorrichtung die hier erläuterten Merkmale mit Bezug auf Berechnungsvorrichtungen 110 und 120 aufweist.
  • Die Berechnungsvorrichtung 110 umfasst eine Eingabe-/Ausgabevorrichtung 111, die konfiguriert ist zum Kommunizieren mit anderen Berechnungsvorrichtungen, zum Beispiel Berechnungsvorrichtung 120, mittels eines Kommunikationskanals 145. Die Eingabe-/Ausgabevorrichtung 111 ist darüber hinaus konfiguriert zum Kommunizieren mit einer industriellen Steuerung 130 mittels eines Kommunikationskanals 141. Die Eingabe-/Ausgabevorrichtung 111 kann mit der Steuerung 130 oder der Berechnungsvorrichtung 120 mittels eines drahtgebundenen oder drahtlosen Kommunikationskanals kommunizieren. Die Eingabe-/Ausgabevorrichtung 111 kann zum Beispiel ein Netzwerk-Adapter, eine Netzwerkkarte, eine Schnittstelle oder ein Port (zum Beispiel ein USB-Port, ein serieller Port, ein paralleler Port, ein analoger Port, ein digitaler Port, VGA, DVI, HDMI, FireWire, CAT 5 oder ein beliebiger anderer Typ eines Ports oder einer Schnittstelle) sein. Die Eingabe-/Ausgabevorrichtung 111 kann Hardware, Software und/oder Firmware umfassen. Es wird verstanden, dass die Eingabe-/Ausgabevorrichtung 111 mehr als einen dieser Adapter, Karten oder Ports enthält.
  • Die Berechnungsvorrichtung 110 enthält eine Verarbeitungsvorrichtung 113 und eine Speichervorrichtung 115. Die Verarbeitungsvorrichtung 113 ist ausgebildet zum Kommunizieren mit der Eingabe-/Ausgabevorrichtung 111 und der Speichervorrichtung 115. Die Verarbeitungsvorrichtung 113 kann vom programmierbaren Typ sein; eine dedizierte, hartverdrahtete Zustandsmaschine; oder eine Kombination davon. Die Vorrichtung 113 kann ferner mehrere Prozessoren, Arithmetik-Logik-Einheiten (ALUs), zentrale Verarbeitungseinheiten (CPUs), digitale Signalprozessoren (DSPs) oder dergleichen enthalten. Für Formen der Verarbeitungsvorrichtung 113 mit mehreren Verarbeitungseinheiten kann eine verteilte, pipelinebasierte und/oder Parallel-Verarbeitung nach Bedarf verwendet werden. Die Verarbeitungsvorrichtung 113 kann dediziert werden zum Durchführen lediglich der hier erläuterten Operationen, oder kann in einer oder mehreren zusätzlichen Anwendungen verwendet werden. In der dargestellten Form ist die Verarbeitungsvorrichtung 113 eine programmierbare Einheit, die Algorithmen ausführt und Daten in Übereinstimmung mit Synchronisationsanweisungen (wie zum Beispiel Software oder Firmware), die im Speicher 115 gespeichert ist, verarbeitet. Alternativ oder zusätzlich sind die Synchronisationsanweisungen für die Verarbeitungsvorrichtung 113 zumindest partiell durch eine hartverdrahtete Logik oder eine andere Hardware definiert. Die Verarbeitungsvorrichtung 113 kann eine oder mehrere Komponenten beliebigen Typs umfassen, die geeignet sind zum Verarbeiten der Signale, die von der Eingabe-/Ausgabevorrichtung 111 oder von einem anderen Ort empfangen werden, und kann gewünschte Ausgangssignale bereitstellen. Derartige Komponenten können eine Digitalschaltung, Analogschaltung oder eine Kombination von beiden umfassen.
  • Wie im Folgenden detailliert erläutert, ist die Verarbeitungsvorrichtung 113 konfiguriert zum Analysieren von Computerdateien, die im Speicher 115 gespeichert sind, zum Zweck der Synchronisation von Dateien innerhalb des Systems 100. Eine Dateisynchronisation ist in industriellen Steueranwendungen mit vorab vorhandenen Dateien nützlich, die auf verschiedene Arten und Weisen verwendet werden können. In bestimmten Ausführungsformen des Systems 100 ist die gewünschte Synchronisation der Dateien nicht auf die Bestimmung beschränkt, ob die Dateien existieren oder nicht, oder eine Bestimmung, ob die Dateien aktualisiert sind. Das System 100 kann konfiguriert sein, diese Dateisynchronisation auf lokalen Laufwerken und entfernten Netzwerkeinheiten anderer Berechnungsvorrichtungen, die auch als Knoten bekannt sind, zu erweitern und anzuwenden.
  • Die Prozesse in der vorliegenden Anwendung können mit einer Verarbeitungsvorrichtung 113 als Operationen durch Software, Hardware, künstliche Intelligenz, Fuzzy Logic oder eine Kombination davon implementiert werden, oder zumindest partiell durch einen Nutzer oder einen Betreiber durchgeführt werden. In bestimmten Ausführungsformen stellen Synchronisationsanweisungen Softwareelemente als ein Computerprogramm dar, die auf einem computerlesbaren Medium codiert sind, wobei eine Steuerung oder eine Verarbeitungsvorrichtung die erläuterten Operationen durchführt, wenn das Computerprogramm ausgeführt wird.
  • Der Speicher 115 kann aus einem oder mehreren Typen bestehen, wie zum Beispiel eine Festkörpereinheit, elektromagnetische Einheit, optische Einheit oder eine Kombination dieser Formen. Der Speicher 115 kann darüber hinaus flüchtig, nicht-flüchtig oder eine Kombination dieser Typen sein, und ein Teil oder eine Gesamtheit des Speichers 115 kann eine tragbare Einheit sein, wie zum Beispiel eine Festplatte, ein Band, ein Speicher-Stick, eine Kassette oder dergleichen. Der Speicher 115 kann darüber hinaus Daten speichern, die durch Synchronisationsanweisungen manipuliert werden, wie zum Beispiel Daten, die Signale darstellen, die von der Eingabe-/Ausgabevorrichtung 111 empfangen werden und/oder an diese gesendet werden, zusätzlich zu oder anstelle der Speicherung von Synchronisationsanweisungen, um nur ein Beispiel zu nennen. Wie in 1 gezeigt, kann die Speichereinheit 115 mit der Verarbeitungsvorrichtung 113 gekoppelt sein und/oder in der Verarbeitungsvorrichtung 113 enthalten sein. Es wird verstanden, dass ein beliebiges oder alle der oben stehenden Merkmale der Berechnungsvorrichtung 110 auch in den hier offenbarten anderen Berechnungsvorrichtungen vorhanden sein können.
  • Die Berechnungsvorrichtung 120 enthält eine Eingabe-/Ausgabevorrichtung 121, eine Verarbeitungsvorrichtung 123 und eine Speichervorrichtung 125. Die Eingabe-/Ausgabevorrichtung 121 ist konfiguriert zum Kommunizieren mit der Berechnungsvorrichtung 110 mittels eines Kommunikationskanals 145 und mit der industriellen Steuerung 130 mittels Kommunikationskanal 143. Der Kommunikationskanal 143 kann ein festverdrahteter oder drahtloser Kanal sein.
  • Bezugnehmend auf 2 wird ein Blockdiagramm mit einer Speichervorrichtung 200, wie zum Beispiel Speichervorrichtung 115 oder Speichervorrichtung 125 des Systems 100 erläutert. Die Vorrichtung 200 enthält einen Satz von Computerdateien 201, die in der Vorrichtung 200 gespeichert sind. Der Satz von Computerdateien 201 wird in Untergruppen klassifiziert, basierend auf Synchronisationsanweisungen, die durch eine Verarbeitungsvorrichtung, wie zum Beispiel Verarbeitungsvorrichtung 113 oder Verarbeitungsvorrichtung 123 ausgeführt werden. Der Synchronisationsprozess kann Anweisungen enthalten, die an einer der Berechnungsvorrichtungen 110 oder 120 gespeichert sind.
  • Der Satz von Computerdateien 200 enthält einen Satz bzw. eine Gruppe eingerichteter Dateien 203 und einen Satz bzw. eine Gruppe nicht eingerichteter Dateien 205. Es gibt viele Arten und Weisen, auf die eine Datei in einer industriellen Steueranwendung erzeugt oder verarbeitet werden kann. Jedoch führen nur bestimmte vorher festgelegte qualifizierende Trigger-Aktionen, die an einer Datei durchgeführt werden, zu der Einrichtung der Datei. Trigger-Aktionen sind Ereignisse, die mit einer Datei assoziiert werden können, um diese als eingerichtet zu klassifizieren. Nur dann, wenn bestimmte vorher festgelegte qualifizierende Trigger-Aktionen an einer Datei durchgeführt werden, wird die Datei als eingerichtet angesehen. Ein Nutzer kann bestimmte Ereignisse als Trigger bestimmen. Ein Beispiel einer qualifizierenden Trigger-Aktion ist ein Hochladen oder Transferieren, von Daten zu einer Berechnungsvorrichtung 110 von einer industriellen Steuerung 130. Die empfangenen Dateien werden in einen Dateisatz kompiliert, der eine oder mehrere Dateien enthält, die dann an einer Berechnungsvorrichtung gespeichert werden. Das Ausbilden der Daten in einen Dateisatz bzw. eine Dateigruppe kann ein Kombinieren, Addieren, Weglassen oder Ändern der Daten umfassen. Dieser gespeicherte Dateisatz ist ein eingerichteter Dateisatz. Ein weiteres Beispiel einer Trigger-Aktion ist die gewollte bzw. beabsichtigte Identifikation einer bestimmten Datei als eingerichtet.
  • In bestimmten Ausführungsformen speichert eine Trigger-Aktion eine Änderung in einer Steuerzeichnung. In bestimmten Ausführungsformen wird eine Position eines dedizierten Verzeichnisses strikt für die archivarische und/oder Verwendung der aktuellsten oder relevanten steuerbezogenen Dateien identifiziert. Eine eingerichtete Trigger-Überprüfungsanwendung kann periodisch eine Änderung in einem Zeitstempel der Datei überprüfen, indem vorhergehende Versionen mit der letzten Version verglichen werden, unter Verwendung von Hash-Werten, wie zum Beispiel einem MD5-Message-Digest-Algorithmus, assoziiert mit dem Inhalt der Dateien in diesem Verzeichnis. In bestimmten Ausführungsformen kann die Detektion eines geänderten Zeitstempels einer Datei als ein eingerichteter Trigger eingestellt werden. Die Trigger-Aktion muss nicht bedingt sein, wenn der Zeitstempel neuer ist. Eine Änderung in einem Zeitstempel kann eine Trigger-Aktion sein. Wenn zum Beispiel eine neuere zeitgestempelte Version existiert, kann die neue Version einen Fehler enthalten und die ältere Dateiversion soll synchronisiert werden. Wenn die ältere Datei in dem dedizierten Verzeichnis zurück gespeichert wird und die neuere zeitgestempelte Dateiversion überschreibt, würde die Datei als eingerichtet klassifiziert werden.
  • In bestimmten Ausführungsformen kann die obige eingerichtete Trigger-Überprüfungsanwendung einen Inhaltsunterschied-Algorithmus als Trigger-Aktion verwenden. Wie oben angegeben, kann zum Beispiel ein Hash-Wert, der mit dem Inhalt der Datei assoziiert ist, als ein eindeutiger Identifikator für die Inhalte von jeder Datei verwendet werden. Die Detektion einer Änderung in einem Hash-Wert der Datei kann eine Trigger-Aktion sein.
  • Der Zeitpunkt, zu dem eine Datei eine eingerichtete Datei wird, kann der Zeitpunkt sein, der für den letzten eingerichteten qualifizierten Trigger-Zeitstempel diese Berechnungsvorrichtung verwendet wird. Eine Datei kann als eingerichtet angesehen werden unmittelbar nach dem Dateihochladen von der industriellen Steuerung 130 und einer jeweiligen Dateierzeugung in der Berechnungsvorrichtung 110. Diesem Zeitpunkt folgend kann ein Nutzer alternativ aufgefordert werden, die eingerichtete Datei zu synchronisieren, und ein Zeitpunkt, zu dem der Nutzer antwortet, kann der Zeitpunkt sein, um den letzten eingerichteten qualifizierten Trigger-Zeitstempel zu markieren.
  • Der letzte eingerichtete qualifizierte Trigger-Zeitstempel ist der gespeicherte Zeitstempel, der durch jede Berechnungsvorrichtung bereitgestellt wird, wenn eine Abfrage vorliegt, welche Berechnungsvorrichtung den letzten aufweist oder eine qualifizierte Trigger-Aktion zuletzt durchgeführt hat. Der letzte eingerichtete qualifizierte Trigger-Zeitstempel kann jedes Mal dann aktualisiert werden, wenn eine Berechnungsvorrichtung eine qualifizierte Trigger-Aktion durchführt. Die Berechnungsvorrichtung mit dem neuesten Zeitstempel dient als Dateiquelle für die anderen Berechnungsvorrichtungen. Die Dateiquellen-Berechnungsvorrichtung kann zum Beispiel Dateien an Berechnungsvorrichtungen bereitstellen, die initialisieren oder erneut mit dem System 100 verbinden. Beim Initialisieren einer Berechnungsvorrichtung werden alle Berechnungsvorrichtungen mit einem standardmäßigen zuletzt eingerichteten qualifizierten Trigger-Zeitstempel initialisiert, der anzeigt, dass es keine Trigger-Aktion gegeben hat, die mit der Berechnungsvorrichtung durchgeführt wird. Ein Zeitstempel, der zur Initialisierung einer Berechnungsvorrichtung verwendet wird, kann zum Beispiel eine Zeit vor der Implementierung des Systems 100 repräsentieren, um anzuzeigen, dass die Berechnungsvorrichtung, die initialisiert wird, nicht als ein Quellenknoten identifiziert werden soll. Eine Liste eingerichteter Dateien 203 kann in einer Datei an der Vorrichtung 200 gespeichert werden.
  • Wenn eine Berechnungsvorrichtung initialisiert wird und online gebracht wird, wird eine automatische Routine durchgeführt zum Identifizieren und Lokalisieren der Berechnungsvorrichtung mit dem neuesten oder dem aktuellsten Zeitstempel der jeweiligen letzten qualifizierten Trigger-Aktion der Berechnungsvorrichtung. Der Zeitstempel einer qualifizierten Trigger-Aktion wird an der jeweiligen Berechnungsvorrichtung gespeichert und kann durch andere Berechnungsvorrichtungen abgefragt werden. Eingerichtete Dateien, die bereit sind, an der Quellenberechnungsvorrichtung synchronisiert zu werden, werden dann zu der initialisierenden Berechnungsvorrichtung synchronisiert.
  • Nicht eingerichtete Dateien 205 werden identifiziert, jedoch nicht an andere Berechnungsvorrichtungen transferiert, was Speicherplatz spart, und wichtiger eine Dateisynchronisationsverarbeitung reduziert. Diese Dateiklassifizierung wird noch effektiver unter der Voraussetzung, dass die Hinzufügung von Berechnungsvorrichtungen für eine Dateisynchronisationsverarbeitung signifikant ansteigen würde, wenn der gesamte Satz von Computerdateien 201 während einer Synchronisation berücksichtigt würde. Die Klassifizierung einer Datei als nicht eingerichtet kann darüber hinaus eine nicht beabsichtigte oder nicht erwünschte Synchronisation verhindern. In bestimmten Ausführungsformen kann ein Nutzer eine Datei, die als eingerichtet klassifiziert ist, manuell unter Verwendung einer Nutzerschnittstelle als nicht eingerichtet neu bestimmen. Ein Nutzer kann darüber hinaus einer Datei, die als nicht eingerichtet klassifiziert ist, unter Verwendung der Nutzerschnittstelle manuell als eingerichtet neu bestimmen.
  • Der Satz bzw. die Gruppe eingerichteter Dateien 203 kann einen Satz bzw. eine Gruppe von Dateien 207 umfassen, die zum Synchronisieren bereit sind, sowie einen Satz bzw. eine Gruppe von Dateien 209, die nicht bereit zum Synchronisieren sind. Der Satz von Dateien 207, die bereit sind zum Synchronisieren, kann mit einer Nutzerschnittstelle sichtbar gemacht werden, die mit der Berechnungsvorrichtung 110 oder der Berechnungsvorrichtung 120 angezeigt wird. Ein Nutzer kann identifizieren, welcher des Satzes der eingerichteten Datei 203 in dem Satz der Dateien 207 aufzunehmen oder auszuschließen ist, die bereit sind zum Synchronisieren, unter Verwendung der Nutzerschnittstelle zum Klassifizieren eines Satzes von Dateien 207, die bereit sind zur Synchronisation. Der verbleibende Satz eingerichteter Dateien 209, die nicht bereit sind zur Synchronisation, kann später neu klassifiziert werden, um in dem Satz von Dateien aufgenommen zu werden, die bereit sind zur Synchronisation.
  • Der Satz von Dateien 207, die bereit zum Synchronisieren sind, enthält einen Satz von Dateien, die durch Synchronisationsregeln 211 zugelassen sind, und einen Satz von Dateien, die durch Synchronisationsregeln 213 nicht zugelassen sind. Regeln werden ausgeführt, um den eingerichteten Dateisatz auf einen Dateisatz bzw. eine Dateigruppe 211 zu reduzieren. Der Satz von Dateien, der durch Synchronisationsregeln 211 zugelassen wird, ist durch einen Satz von Steuerregeln bestimmt. Einige Beispiele dieser Regeln enthalten, sind jedoch nicht beschränkt auf das Folgende: (i) ob oder ob nicht eine Dateisynchronisation an der jeweiligen Berechnungsvorrichtung erlaubt ist; (ii) ob nur durch einen Vergleich von Zeitstempeln zu überschreiben ist; (iii) ob oder ob nicht Dateien an einem Ziel zu überschreiben/erzeugen sind, an dem die Dateien nicht eingerichtet werden, jedoch die eingehende Quellendatei „eingerichtet” ist; (iv) ob eingerichtete Dateien entweder innerhalb aller vorbestimmter Gruppen von Berechnungsvorrichtungen synchronisiert werden oder die Synchronisation nur innerhalb der lokalen vorbestimmten Gruppe der Berechnungsvorrichtung beschränkt ist; (v) ob die Synchronisation unmittelbar und automatisch durchzuführen ist oder ob der Nutzer zu einer Eingabe vor der Durchführung der Synchronisation aufgefordert wird. Selbst wenn eine qualifizierende Trigger-Aktion für eine Datei auftritt, wird die Dateisynchronisation an der Datei nicht durchgeführt, wenn die Regel eine Dateisynchronisation nicht erlaubt. Nur die Dateien, die synchronisiert werden müssen, während die Regeln berücksichtigt werden, werden synchronisiert, was einen nicht erforderlichen Transfer von Daten durch das Netzwerk reduziert.
  • In bestimmten Ausführungsformen enthalten die Synchronisationsregeln eine Auswahl berechtigter Berechnungsvorrichtungen für einen Empfang von Ziel-Synchronisationsdateien. Die Berechnungsvorrichtungen, die durch Steuerregeln ausgewählt werden, können auf einem Berechnungsvorrichtungstyp oder einer Auswahl durch einen Nutzer basieren. Die ausgewählten Berechnungsvorrichtungen können durch eine IP-Adresse identifiziert werden, die in einem Speicher an der Berechnungsvorrichtung 110 oder 120 gespeichert ist.
  • In bestimmten Ausführungsformen weist jede Berechnungsvorrichtung im System 100 vorbestimmte Typen auf, die mit diesem gemäß deren Rolle im System 100 assoziiert sind. Diese Typen sind über einen gespeicherten Wert an der Berechnungsvorrichtung selbst detektierbar und über eine Kommunikation innerhalb des Systems 100 verfügbar. Jeder Berechnungsvorrichtung ist eine Gruppennummer zugewiesen. Zum Beispiel kann eine Gruppe als 51 und eine andere als 99 identifiziert sein. Eine Synchronisation wird für nicht berechtigte Computervorrichtungstypen verhindert und auf eine Synchronisation nur innerhalb vorbestimmter identifizierter Gruppen beschränkt.
  • Der Satz von Dateien, der durch Synchronisationsregeln 211 zugelassen ist, enthält einen Satz von Zielsynchronisationsdateien 215. In bestimmten Ausführungsformen sind Dateicharakteristika für jede eingerichtete Datei in einer Speichervorrichtung 215 der Berechnungsvorrichtung 110 gespeichert. Eine Charakteristik von jeder Datei innerhalb des Satzes von Dateien, die durch Synchronisationsregeln 211 zugelassen sind, einschließlich Zeitstempel, kann mit der Charakteristik von Dateien verglichen werden, die in einer beabsichtigten Empfangsberechnungsvorrichtung gespeichert sind. Die Charakteristik von jeder Datei kann einen Synchronisationsstatus, einen relativen Dateipfad, Dateinamen und eine Dateierweiterung enthalten. Der Satz von Zielsynchronisationsdateien 215 kann Dateien einer Dateigruppe 211 nicht enthalten, die durch die Empfangsberechnungsvorrichtung als Dateien identifiziert werden, die nicht empfangen werden müssen, um eine Synchronisation an anderen designierten Berechnungsvorrichtungen abzuschließen. Wenn der Satz synchronisierbarer Dateien 215 an eine nicht synchronisierte Vorrichtung transferiert wird, kann die Charakteristik der transferierten Dateien ebenso transferiert werden.
  • Die Aktion zur Durchführung der Dateisynchronisation kann der Klassifikation des Satzes von Zielsynchronisationsdateien 215 folgend durchgeführt werden, wobei eine Synchronisationsregel eingestellt wird, um die Synchronisation nach einem Upload-Betrieb von der Steuerung 130 automatisch durchzuführen. In bestimmten Ausführungsformen kann der Satz von synchronisierbaren Zieldateien 215 nicht synchronisiert werden bis zur nächsten automatisierten Synchronisation, oder wenn ein Nutzer entscheidet, den Synchronisationsbetrieb zu initiieren.
  • In bestimmten Ausführungsformen kann eine Berechnungsvorrichtung, wie zum Beispiel Berechnungsvorrichtung 110, die als eine Dateiquelle dient, eine Anforderung zum Synchronisieren des Satzes synchronisierbarer Zieldateien 215 mit einer anderen Berechnungsvorrichtung übertragen, wie zum Beispiel Berechnungsvorrichtung 120. Darauf ansprechend kann die Berechnungsvorrichtung 120 einen Teil des Satzes synchronisierbarer Zieldateien 215 akzeptieren, unter Verwendung eines Satzes von Steuerregeln, wie zum Beispiel der Steuerregeln, die oben stehend mit Bezug auf Dateisatz 211 beschrieben wurden. Wenn der Teil des Satzes synchronisierbarer Dateien 215 zur Berechnungsvorrichtung 120 transferiert wird, kann die Charakteristik der transferierten Dateien ebenso zur Berechnungsvorrichtung 120 transferiert werden.
  • Bezugnehmend auf 3 wird ein beispielhafter Prozess 300 für eine Dateisynchronisation in einem industriellen Steuersystem erläutert. Der Prozess 300 kann insgesamt oder teilweise in einem oder mehreren der hier offenbarten Steuersysteme implementiert werden. In bestimmten Formen können die Dateisynchronisationsfunktionalitäten durch separate Steuersysteme durchgeführt werden. In bestimmten Formen können die Dateisynchronisationsfunktionalitäten durch das gleiche Steuersystem durchgeführt werden.
  • Der Prozess 300 beginnt mit einem Startbetrieb 301 und geht zur Operation 303, wobei eine Berechnungsvorrichtung, wie zum Beispiel Berechnungsvorrichtung 110 des Systems 100 Daten empfängt, wie zum Beispiel einen Satz von Steuerdateien von einer industriellen Steuerung. Der Satz von Steuerdateien wird als eingerichtete Dateien designiert. Ein Satz von Charakteristika, die mit dem Satz von Steuerdateien assoziiert sind, werden in der Speichervorrichtung 115 gespeichert und umfassen einen erzeugten oder aktualisierten Transferzeitstempel, der die Zeit anzeigt, zu der der Satz von Steuerdateien von der industriellen Steuerung transferiert wurden, und repräsentieren den letzten eingerichteten qualifizierten Trigger-Aktionszeitstempel. Der Prozess 300 geht zur Operation 305, bei dem der Satz von Steuerdateien unter Verwendung eines Satzes von Synchronisationsregeln klassifiziert wird. Ein Teilsatz von Dateien aus dem Satz von Steuerdateien wird erzeugt in Übereinstimmung mit den Synchronisationsregeln. Operation 305 kann beinhalten, dass ein Nutzer Dateien auswählt, die bereit sind, synchronisiert zu werden. Prozess 300 geht zur Operation 307, wobei der Teilsatz von Dateien aus Operation 305 unter Verwendung von Charakteristika der Dateien sowie von Charakteristika von Dateien von einer anderen Berechnungsvorrichtung klassifiziert werden. Berechnungsvorrichtung 120 kann zum Beispiel bei Empfang einer Anforderung zur Synchronisation bestimmte Dateien aus dem Teilsatz von Dateien von Operation 305 identifizieren, die nicht synchronisiert werden müssen, indem die Charakteristika der in der Berechnungsvorrichtung 120 gespeicherten Dateien mit den Charakteristika der Dateien verglichen werden, die mit Operation 305 identifiziert werden. Ein Satz von Synchronisationsdateien, die zu anderen Berechnungsvorrichtungen transferiert werden sollen, wie zum Beispiel Berechnungsvorrichtung 120 des Systems 100, ist das Produkt der Klassifikation. Prozess 300 geht zur Operation 309, wobei der Satz von Synchronisationsdateien zu einer anderen Berechnungsvorrichtung transferiert werden, wie zum Beispiel Berechnungsvorrichtung 120 des Systems 100, um die mit der Berechnungsvorrichtung 110 und Berechnungsvorrichtung 120 gespeicherten Dateien zu synchronisieren. Der Prozess 300 geht dann zu einer Endoperation 311.
  • Es wird darüber hinaus verstanden, dass eine Anzahl von Variationen und Modifikationen für Prozess 300 vorstellbar sind, zum Beispiel das Weglassen von einem oder mehreren Aspekten des Prozesses 300, die Hinzufügung weiterer Bedingungen und Operationen und/oder die Umorganisation oder Separation von Operationen und Bedingungen in separate Prozesse.
  • Im Weiteren werden eine schriftliche Erläuterung einer Anzahl beispielhafter Ausführungsformen bereitgestellt. Eine Ausführungsform ist ein industrielles Steuersystem mit einer industriellen Steuerung, einer ersten Berechnungsvorrichtung mit einer nicht-flüchtigen Speichervorrichtung, die konfiguriert ist zum Speichern eines ersten Dateisatzes, wobei der erste Dateisatz eine Vielzahl von Dateien enthält, die jeweils mit einem Zeitstempel assoziiert sind, und eine zweite Berechnungsvorrichtung, die strukturiert ist zum Kommunizieren mit der industriellen Steuerung und der ersten Berechnungsvorrichtung, wobei die zweite Berechnungsvorrichtung eine zweite nicht-flüchtige Speichervorrichtung enthält, die strukturiert ist zum Speichern von sowohl einem zweiten Dateisatz, der eine Vielzahl von Dateien enthält, und von Synchronisationsanweisungen, und eine Verarbeitungsvorrichtung, die konfiguriert ist zum Ausführen der Synchronisationsanweisungen, um: einen Teilsatz von Dateien aus dem zweiten Dateisatz zu klassifizieren, durch Identifizieren von Dateien, die von der industriellen Steuerung zu der zweiten Berechnungsvorrichtung transferiert werden, Klassifizieren eines Teil-Teilsatzes von Dateien aus dem Teilsatz von Dateien unter Verwendung eines Satzes von Synchronisationsregeln, Klassifizieren eines Satzes von Synchronisationsdateien aus dem Teil-Teilsatz von Dateien, und zum Transferieren des Satzes von Synchronisationsdateien von der zweiten Berechnungsvorrichtung an die erste Berechnungsvorrichtung.
  • In bestimmten Formen des oben stehenden Systems ist die Verarbeitungsvorrichtung konfiguriert zum Ausführen der Synchronisationsanweisungen, um eine Zeit zu bestimmen, die mit dem Transfer des Teil-Teilsatzes von Dateien assoziiert ist. In bestimmten Formen umfasst das Klassifizieren des Satzes von Synchronisationsdateien ein Identifizieren von jeder Datei des ersten Dateisatzes, wobei es sich um eine Version von einer der Dateien des Teil-Teilsatzes von Dateien handelt, und ein Vergleichen des Zeitstempels für jede Datei des ersten Dateisatzes mit der Zeit, die mit einer entsprechenden Datei des Teil-Teilsatzes von Dateien assoziiert ist. In bestimmten Formen ist die Zeit, die mit dem Transfer des Teilsatzes von Dateien assoziiert ist, die Zeit, zu der der Transfer des zweiten Dateisatzes an die zweite Berechnungsvorrichtung von der industriellen Steuerung abgeschlossen war. In bestimmten Formen umfasst der Satz von Synchronisationsregeln ein Klassifizieren einer Datei als eine des Teil-Teilsatzes von Dateien, ansprechend auf eine Bestimmung, dass ein Nutzer die Datei zur Synchronisation ausgewählt hat. In bestimmten Formen umfasst der Satz von Synchronisationsdateien Dateien des Teil-Teilsatzes von Dateien, für die es keine entsprechende Version in dem ersten Satz von Dateien gibt, die in der Speichervorrichtung der ersten Berechnungsvorrichtung gespeichert sind. In bestimmten Formen ist die erste Berechnungsvorrichtung konfiguriert zum Initialisieren durch Detektieren der industriellen Steuerung, Detektieren der zweiten Berechnungsvorrichtung, Detektieren des Teilsatzes von Dateien, und zum Empfangen des Teilsatzes von Dateien von der zweiten Berechnungsvorrichtung. In bestimmten Formen umfasst die erste Berechnungsvorrichtung eine Verarbeitungsvorrichtung, die konfiguriert ist zum Ausführen der Synchronisationsanweisungen unter Verwendung des ersten Dateisatzes.
  • Eine weitere beispielhafte Ausführungsform ist ein Verfahren zur Synchronisation von Computerdateien eines industriellen Steuersystems mit einer ersten Berechnungsvorrichtung, einer zweiten Berechnungsvorrichtung und einer industriellen Steuerung, umfassend ein Transferieren, mit der industriellen Steuerung eines Satzes von Steuerdateien an die zweite Berechnungsvorrichtung, wobei der Satz von Steuerdateien, entsprechend eines Transferzeitstempels eine Zeit angibt, zu der der Satz von Steuerdateien an die zweite Berechnungsvorrichtung transferiert wurde, Klassifizieren, mit der zweiten Berechnungsvorrichtung, eines Teilsatzes von Dateien aus dem Satz von Steuerdateien unter Verwendung eines Satzes von Synchronisationsregeln, Klassifizieren, mit der zweiten Berechnungsvorrichtung, eines Satzes von Synchronisationsdateien aus dem Teilsatz von Dateien unter Verwendung einer Charakteristik der Dateien des Teilsatzes von Dateien, und Transferieren des Satzes von Synchronisationsdateien von der zweiten Berechnungsvorrichtung an die erste Berechnungsvorrichtung.
  • In bestimmten Formen des oben stehenden Verfahrens umfasst das Verfahren ein Verbinden einer dritten Berechnungsvorrichtung mit der zweiten Berechnungsvorrichtung. In bestimmten Formen umfasst das Verfahren ein Transferieren, mit der industriellen Steuerung, eines zweiten Satzes von Steuerdateien an die erste Berechnungsvorrichtung, wobei der zweite Satz von Steuerdateien entsprechend eines zweiten Transferzeitstempels eine zweite Zeit angibt, zu der der zweite Satz von Steuerdateien an die erste Berechnungsvorrichtung transferiert wurde, Bestimmen, dass der erste Transferzeitstempel jünger ist als der zweite Transferzeitstempel, und Transferieren des ersten Satzes von Steuerdateien an die dritte Berechnungsvorrichtung, ansprechend auf das Bestimmen, dass der erste Transferzeitstempel jünger als der zweite Transferzeitstempel ist. In bestimmten Formen umfasst der Satz von Synchronisationsregeln ein Klassifizieren der ersten Berechnungsvorrichtung als ein Synchronisationsziel, wobei jedoch die dritte Berechnungsvorrichtung nicht als ein Synchronisationsziel klassifiziert wird. In bestimmten Ausbildungsformen erfolgt das Klassifizieren des Teilsatzes von Dateien, das Klassifizieren des Satzes von Synchronisationsdateien und das Transferieren des Satzes von Synchronisationsdateien automatisch, ansprechend auf ein Transferieren des Satzes von Steuerdateien. In bestimmten Formen umfasst der Satz von Synchronisationsregeln ein Klassifizieren einer Datei als eine des Teilsatzes von Dateien, ansprechend darauf, dass ein Nutzer eine Datei zur Synchronisation auswählt. In bestimmten Formen umfasst der Satz von Synchronisationsregeln ein Verzögern des Transfers bis zu einer bestimmten Zeit oder bis ein Nutzer eine Synchronisationsauthorisierung eingibt.
  • Eine weitere beispielhafte Ausführungsform ist ein Verfahren zur Synchronisation von Computerdateien eines industriellen Steuersystems mit einer ersten Berechnungsvorrichtung, einer zweiten Berechnungsvorrichtung und einer industriellen Steuerung, umfassend ein Detektieren, mit der zweiten Berechnungsvorrichtung, eines qualifizierten Trigger-Ereignisses, Klassifizieren eines Satzes eingerichteter Dateien, ansprechend auf das Detektieren des qualifizierten Trigger-Ereignisses, Klassifizieren, mit der zweiten Berechnungsvorrichtung, eines Teilsatzes von Dateien aus dem Satz eingerichteter Dateien unter Verwendung eines Satzes von Synchronisationsregeln, Klassifizieren, mit der zweiten Berechnungsvorrichtung, eines Satzes von Synchronisationsdateien aus dem Teilsatz von Dateien, und Synchronisieren der ersten Berechnungsvorrichtung und der zweiten Berechnungsvorrichtung durch Transferieren des Satzes von Synchronisationsdateien von der zweiten Berechnungsvorrichtung zu der ersten Berechnungsvorrichtung.
  • In bestimmten Formen des oben stehenden Verfahrens ist das qualifizierte Trigger-Ereignis der Transfer von Daten an die zweite Berechnungsvorrichtung von der industriellen Steuerung und die Erzeugung eines Dateisatzes unter Verwendung der transferierten Dateien. In bestimmten Formen umfasst der Satz von Synchronisationsdateien ein Vergleichen eines Zeitstempels, der assoziiert ist mit dem Teilsatz von Dateien, und eines Zeitstempels, der assoziiert ist mit einem Satz von Dateien, die in einem Speicher der ersten Berechnungsvorrichtung gespeichert sind. In bestimmten Formen umfasst das qualifizierte Trigger-Ereignis ein Bewegen einer Datei in ein designiertes Verzeichnis. In bestimmten Formen umfasst das qualifizierte Trigger-Ereignis ein Designieren einer Datei als eine eingerichtete Datei durch einen Nutzer. In bestimmten Formen umfasst das qualifizierte Trigger-Ereignis ein Modifizieren einer Datei oder ein Detektieren einer Änderung in dem Inhalt einer Datei, die im Speicher der zweiten Berechnungsvorrichtung gespeichert ist.
  • Es wird verstanden, dass verschiedene Aspekte, Merkmale, Prozesse und Operationen aus den verschiedenen Ausführungsformen in einer beliebigen der anderen Ausführungsformen verwendet werden kann, es sei denn, dass dies ausdrücklich anders dargestellt wird. Bestimmte hier dargestellte Operationen können durch einen Computer implementiert werden, der ein Computerprogrammprodukt auf einem nicht-flüchtigen computerlesbaren Speichermedium ausführt, wobei das Computerprogrammprodukt Anweisungen umfasst, die bewirken, dass der Computer eine oder mehrere der Operationen ausführt, oder Anweisungen an andere Vorrichtungen zum Ausführen von einer oder mehrerer Operationen ausgibt.
  • Während die vorliegende Offenbarung detailliert in den Zeichnungen und der oben stehenden Erläuterung dargestellt und erläutert wurde, wird dieses als darstellend und nicht einschränkend angesehen, wobei verstanden wird, dass nur bestimmte beispielhafte Ausführungsformen gezeigt und erläutert wurden, und dass alle Änderungen und Modifikationen, die mit dem Umfang der vorliegenden Offenbarung einhergehen, geschützt werden sollen. Es wird verstanden, dass die Verwendung von Wörtern, wie zum Beispiel vorzugsweise, bevorzugt oder bevorzugter, die in der oben stehenden Beschreibung verwendet wurden, anzeigen, dass die derart beschriebenen Merkmale erwünschter sind, diese nichtsdestotrotz nicht notwendig sein können, und Ausführungsformen ohne diese im Umfang der vorliegenden Offenbarung enthalten sind, wobei der Umfang durch die folgenden Ansprüche definiert wird. Beim Lesen der Ansprüche ist beabsichtigt, dass dann, wenn Wörter, wie zum Beispiel „ein”, „eine”, „zumindest eine” oder „zumindest ein Abschnitt” verwendet werden, es nicht beabsichtigt ist, den Anspruch auf nur ein Element zu beschränken, es sei denn, dass dies ausdrücklich in dem Anspruch anderweitig ausgesagt wird. Der Ausdruck „von” kann eine Assoziation mit oder eine Verbindung mit einem anderen Element konnotieren, sowie ein Dazugehören oder eine Verbindung mit dem anderen Element, wie sich aus dem Kontext ergibt, in dem dieser verwendet wird. Der Ausdruck „gekoppelt zu”, „gekoppelt mit” und dergleichen umfasst eine indirekte Verbindung und Kopplung und ferner umfasst, erfordert jedoch nicht, eine direkte Kopplung oder Verbindung, es sei denn, dass etwas anderes ausdrücklich angegeben wird. Wenn die Aussage „zumindest ein Abschnitt” und/oder „ein Abschnitt” verwendet wird, kann das Element einen Abschnitt und/oder das gesamte Element enthalten, es sei denn, dass etwas anderes ausdrücklich ausgesagt wird.

Claims (21)

  1. Industrielles Steuersystem, umfassend: eine industrielle Steuerung; eine erste Berechnungsvorrichtung mit einer ersten nicht-flüchtigen Speichervorrichtung, die konfiguriert ist zum Speichern eines ersten Dateisatzes, wobei der erste Dateisatz eine Vielzahl von Dateien jeweils mit einem assoziierten Zeitstempel umfasst; eine zweite Berechnungsvorrichtung, die strukturiert ist zum Kommunizieren mit der industriellen Steuerung und der ersten Berechnungsvorrichtung, wobei die zweite Berechnungsvorrichtung enthält: eine zweite nicht-flüchtige Speichervorrichtung, die strukturiert ist zum Speichern von sowohl einem zweiten Dateisatz mit einer Vielzahl von Dateien und Synchronisationsanweisungen; und eine Verarbeitungsvorrichtung, die konfiguriert ist zum Ausführen der Synchronisationsanweisungen, um zu: Klassifizieren eines Teilsatzes von Dateien aus dem zweiten Dateisatz durch Identifizieren von Dateien, die von der industriellen Steuerung zu der zweiten Berechnungsvorrichtung transferiert wurden, Klassifizieren eines Teil-Teilsatzes von Dateien aus dem Teilsatz von Dateien unter Verwendung eines Satzes von Synchronisationsregeln, Klassifizieren eines Satzes von Synchronisationsdateien aus dem Teil-Teilsatz von Dateien, und Transferieren des Satzes von Synchronisationsdateien von der zweiten Berechnungsvorrichtung an die erste Berechnungsvorrichtung.
  2. System nach Anspruch 1, wobei die Verarbeitungsvorrichtung konfiguriert ist zum Ausführen der Synchronisationsanweisungen, um eine Zeit zu bestimmen, die mit dem Transfer des Teil-Teilsatzes von Dateien assoziiert ist.
  3. System nach Anspruch 2, wobei ein Klassifizieren des Satzes von Synchronisationsdateien ein Identifizieren von jeder Datei des ersten Dateisatzes umfasst, wobei es sich um eine Version von einer der Dateien des Teil-Teilsatzes der Dateien handelt, und Vergleichen des Zeitstempels für jede Datei des ersten Dateisatzes mit der Zeit, die mit einer entsprechenden Datei des Teil-Teilsatzes von Dateien assoziiert ist.
  4. System nach Anspruch 2, wobei die Zeit, die mit dem Transfer des Teilsatzes von Dateien assoziiert ist, die Zeit ist, bei der der Transfer des zweiten Dateisatzes an die zweite Berechnungsvorrichtung von der industriellen Steuerung abgeschlossen war.
  5. System nach Anspruch 2, wobei der Satz von Synchronisationsregeln ein Klassifizieren einer Datei als eine des Teil-Teilsatzes von Dateien umfasst, ansprechend auf ein Bestimmen, dass ein Nutzer die Datei zur Synchronisation ausgewählt hat.
  6. System nach Anspruch 2, wobei der Satz von Synchronisationsdateien Dateien des Teil-Teilsatzes von Dateien umfasst, für die es keine entsprechende Version in dem ersten Satz von Dateien gibt, die mit der Speichervorrichtung der ersten Berechnungsvorrichtung gespeichert sind.
  7. System nach Anspruch 1, wobei die erste Berechnungsvorrichtung konfiguriert ist zum Initialisieren durch Detektieren der industriellen Steuerung, Detektieren der zweiten Berechnungsvorrichtung, Detektieren des Teilsatzes von Dateien, und Empfangen des Teilsatzes von Dateien von der zweiten Berechnungsvorrichtung.
  8. System nach Anspruch 1, wobei die erste Berechnungsvorrichtung eine Verarbeitungsvorrichtung umfasst, die konfiguriert ist zum Ausführen der Synchronisationsanweisungen unter Verwendung des ersten Dateisatzes.
  9. Verfahren zum Synchronisieren von Computerdateien eines industriellen Steuersystems mit einer ersten Berechnungsvorrichtung, einer zweiten Berechnungsvorrichtung und einer industriellen Steuerung, umfassend: Transferieren, mit der industriellen Steuerung, eines Satzes von Steuerdateien an die zweite Berechnungsvorrichtung, wobei der Satz von Steuerdateien einem Transferzeitstempel entsprechen, der eine Zeit angibt, zu der die Steuerdateien an die zweite Berechnungsvorrichtung transferiert wurden; Klassifizieren, mit der zweiten Berechnungsvorrichtung, eines Teilsatzes von Dateien aus dem Satz von Steuerdateien unter Verwendung eines Satzes von Synchronisationsregeln; Klassifizieren, mit der zweiten Berechnungsvorrichtung, eines Satzes von Synchronisationsdateien aus dem Teilsatz von Dateien unter Verwendung von Charakteristika der Dateien des Teilsatzes von Dateien; und Transferieren des Satzes von Synchronisationsdateien von der zweiten Berechnungsvorrichtung an die erste Berechnungsvorrichtung.
  10. Verfahren nach Anspruch 9, umfassend ein Verbinden einer dritten Berechnungsvorrichtung mit der zweiten Berechnungsvorrichtung.
  11. Verfahren nach Anspruch 10, umfassend ein Transferieren, mit der industriellen Steuerung, eines zweiten Satzes von Steuerdateien an die erste Berechnungsvorrichtung, wobei der zweite Satz von Steuerdateien einem zweiten Transferzeitstempel entspricht, der eine zweite Zeit angibt, zu der der zweite Satz von Steuerdateien an die erste Berechnungsvorrichtung transferiert wurde, Bestimmen, dass der erste Transferzeitstempel neuer ist als der zweite Transferzeitstempel, und Transferieren des ersten Satzes von Steuerdateien an die dritte Berechnungsvorrichtung, ansprechend auf ein Bestimmen, dass der erste Transferzeitstempel jünger ist als der zweite Transferzeitstempel.
  12. Verfahren nach Anspruch 10, wobei der Satz von Synchronisationsdateien ein Klassifizieren der ersten Berechnungsvorrichtung als ein Synchronisationsziel, jedoch kein Klassifizieren der dritten Berechnungsvorrichtung als ein Synchronisationsziel umfasst.
  13. Verfahren nach Anspruch 9, wobei ein Klassifizieren des Teilsatzes von Dateien, ein Klassifizieren des Satzes von Synchronisationsdateien, und ein Transferieren des Satzes von Synchronisationsdateien automatisch erfolgt, ansprechend auf ein Transferieren des Satzes von Steuerdateien.
  14. Verfahren nach Anspruch 9, wobei der Satz von Synchronisationsregeln ein Klassifizieren einer Datei als eine des Teilsatzes von Dateien umfasst, ansprechend darauf, dass ein Nutzer eine Datei zur Synchronisation auswählt.
  15. Verfahren nach Anspruch 9, wobei der Satz von Synchronisationsregeln ein Verzögern des Transferierens umfasst, entweder bis zu einer designierten Zeit oder bis ein Nutzer eine Synchronisationsauthorisierung eingibt.
  16. Verfahren zum Synchronisieren von Computerdateien eines industriellen Steuersystems mit einer ersten Berechnungsvorrichtung, einer zweiten Berechnungsvorrichtung und einer industriellen Steuerung, umfassend: Detektieren, mit der zweiten Berechnungsvorrichtung, eines qualifizierten Trigger-Ereignisses, Klassifizieren eines Satzes von eingerichteten Dateien, ansprechend auf das Detektieren des qualifizierten Trigger-Ereignisses; Klassifizieren, mit der zweiten Berechnungsvorrichtung, eines Teilsatzes von Dateien aus dem Satz von eingerichteten Dateien unter Verwendung eines Satzes von Synchronisationsregeln; Klassifizieren, mit der zweiten Berechnungsvorrichtung, eines Satzes von Synchronisationsdateien aus dem Teilsatz von Dateien; und Synchronisieren der ersten Berechnungsvorrichtung und der zweiten Berechnungsvorrichtung durch Transferieren des Satzes von Synchronisationsdateien von der zweiten Berechnungsvorrichtung an die erste Berechnungsvorrichtung.
  17. Verfahren nach Anspruch 16, wobei das qualifizierte Trigger-Ereignis der Transfer von Daten an die zweite Berechnungsvorrichtung von der industriellen Steuerung und das Erzeugen eines Dateisatzes unter Verwendung der transferierten Daten ist.
  18. Verfahren nach Anspruch 16, wobei der Satz von Synchronisationsdateien ein Vergleichen eines Zeitstempels, der mit dem Teilsatz von Dateien assoziiert ist, und eines Zeitstempels, der mit einem Satz von Dateien assoziiert ist, der in einem Speicher mit der ersten Berechnungsvorrichtung gespeichert ist, umfasst.
  19. Verfahren nach Anspruch 16, wobei das qualifizierte Trigger-Ereignis ein Bewegen einer Datei in ein designiertes Verzeichnis umfasst.
  20. Verfahren nach Anspruch 16, wobei das qualifizierte Trigger-Ereignis umfasst, dass ein Nutzer eine Datei als eine eingerichtete Datei designiert.
  21. Verfahren nach Anspruch 16, wobei das qualifizierte Trigger-Ereignis ein Modifizieren einer Datei oder ein Detektieren einer Änderung in dem Inhalt einer Datei umfasst, die im Speicher mit der zweiten Berechnungsvorrichtung gespeichert ist.
DE102016224819.7A 2015-12-14 2016-12-13 Verfahren und Vorrichtung für eine Dateisynchronisation basierend auf qualifizierenden Trigger-Aktionen in industriellen Steuervorrichtungen Pending DE102016224819A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201562267165P 2015-12-14 2015-12-14
US62/267,165 2015-12-14

Publications (1)

Publication Number Publication Date
DE102016224819A1 true DE102016224819A1 (de) 2017-06-14

Family

ID=58773304

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102016224819.7A Pending DE102016224819A1 (de) 2015-12-14 2016-12-13 Verfahren und Vorrichtung für eine Dateisynchronisation basierend auf qualifizierenden Trigger-Aktionen in industriellen Steuervorrichtungen

Country Status (2)

Country Link
US (1) US11386123B2 (de)
DE (1) DE102016224819A1 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10366054B2 (en) 2015-12-14 2019-07-30 Abb Schweiz Ag Method and apparatus for for software application internal re-structuring of specifically authorized multi-level sub-folders
KR102558259B1 (ko) 2017-11-17 2023-07-24 삼성메디슨 주식회사 초음파 진단 장치의 제어 방법 및 초음파 진단 장치
EP4063974A1 (de) * 2021-03-23 2022-09-28 ABB Schweiz AG Steuerung eines industriellen prozesses unter verwendung virtualisierter instanzen einer steuerungssoftware

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6330568B1 (en) * 1996-11-13 2001-12-11 Pumatech, Inc. Synchronization of databases
US7363330B1 (en) * 1999-06-07 2008-04-22 Symantec Corporation Work monitor with file synchronization
US20050289350A1 (en) * 2004-06-25 2005-12-29 Markus Schmidt-Karaca Method and system for secure synchronization between an enterprise system and a device
US20070088707A1 (en) * 2004-09-15 2007-04-19 Scott Durgin Method for providing extensible software components within a distributed synchronization system
US7849257B1 (en) * 2005-01-06 2010-12-07 Zhe Khi Pak Method and apparatus for storing and retrieving data
US20060242206A1 (en) * 2005-04-22 2006-10-26 Microsoft Corporation System and method for peer to peer synchronization of files
SE531389C2 (sv) 2006-03-01 2009-03-17 Abb Ab Metod för hantering av olika versioner av en applikation och ett automationssystem
US8918244B2 (en) * 2006-11-14 2014-12-23 Johnson Controls Technology Company System and method of synchronizing an in-vehicle control system with a remote source
US8195608B2 (en) 2008-06-02 2012-06-05 International Business Machines Corporation File synchronization between multiple nodes
US8825597B1 (en) * 2009-08-13 2014-09-02 Dropbox, Inc. Network folder synchronization
US9805056B2 (en) * 2014-06-24 2017-10-31 Panzura, Inc. Synchronizing file updates between two cloud controllers of a distributed filesystem
US10366054B2 (en) 2015-12-14 2019-07-30 Abb Schweiz Ag Method and apparatus for for software application internal re-structuring of specifically authorized multi-level sub-folders

Also Published As

Publication number Publication date
US11386123B2 (en) 2022-07-12
US20170169089A1 (en) 2017-06-15

Similar Documents

Publication Publication Date Title
DE10315490B4 (de) Verfahren und System zum Wechsel zwischen zwei oder mehreren Firmwareabbildungen auf einer Hostvorrichtung
DE4435751B4 (de) Dateiname- und Verzeichnis- Erfassungsverfahren zur Verwendung mit einem Betriebssystem
DE4497149B4 (de) Computerbezogenes Verfahren zur Datenreplikation in Peer-to-Peer-Umgebung
DE112010004931T5 (de) Mehrphasige Wiederherstellung von Dateisystemen mit SelektiverBedarfsweiser Verfügbarkeit von Daten(
DE102009022156A1 (de) Endoskopsystem
DE102016224819A1 (de) Verfahren und Vorrichtung für eine Dateisynchronisation basierend auf qualifizierenden Trigger-Aktionen in industriellen Steuervorrichtungen
DE112012004247T5 (de) Passives Überwachen virtueller Systeme unter Verwendung einer erweiterbaren Indexierung
DE112013003873T5 (de) Verfahren und Vorrichtung zum Patchen
DE112015000343T5 (de) Erstellen einer Wiederherstellungskopie von einer Quelldaten-Kopie in einem Repository, das Quelldaten an verschiedenen Zeitpunkten aufweist
DE112015002101T5 (de) Systeme und Verfahren für einen verbesserten Datenstrukturspeicher
DE102013008522A1 (de) Endgerät-Verwaltungssystem, Verwaltungsserver und Verfahren dafür
DE2336020C3 (de) Adressen-Berechnungsschaltung für Paritätsfehler-Korrekturprogramme
DE112012000274B4 (de) Schutz der Unversehrtheit von Daten auf Speicherdatenträgern
DE112014003067T5 (de) Speicherprogrammierbare Steuerung
DE112017002503T5 (de) Schritt-zurück-mechanismus zum entwickeln und diagnostizieren von prozessanwendungen
DE102007005207A1 (de) Software-Duplikation
DE112022000344T5 (de) Anwenden von änderungen in einem ziel-datenbanksystem
DE69119286T2 (de) Verfahren und Gerät zur Schattenprozessgenerierung
DE102021131057A1 (de) System und Verfahren zur Ausführung einer Aufgabe eines Betriebssystems für ein Fahrzeug
DE102020106416A1 (de) Geräteuhreinstellung beim Booten eines Geräts
DE102009038248A1 (de) Verfahren zum Entfernen modularer Software
EP3796161A1 (de) Verfahren zur bestimmung einer container-konfiguration eines systems, system, computerprogramm und computerlesbares medium
DE112015002881B4 (de) Speichervorrichtung, Flash-Speicher-Steuervorrichtung und Programm
DE112011100807T5 (de) Programm-Ablaufverfolgungsvorrichtung
DE102018111318A1 (de) Verarbeitungsverfahren und Endgerätevorrichtung

Legal Events

Date Code Title Description
R012 Request for examination validly filed