-
GEBIET
-
Die vorliegende Erfindung bezieht sich auf einen modularen Knoten. Insbesondere bezieht sich die vorliegende Erfindung auf eine Kopfstation eines modularen Knotens, welcher eines oder mehrere an die Kopfstation angereihte Eingabe/Ausgabe-Module, E/A-Module, aufweist und/oder als Feldbusknoten ausgebildet ist.
-
HINTERGRUND
-
Stellt ein Hersteller von Komponenten eines Systems FirmwareAktualisierungen bereit, müssen diese auf die jeweiligen Komponenten des Systems übertragen werden, um dort die bisherige Firmware ersetzen zu können. Dabei muss sichergestellt werden, dass die neue Firmware mit der Einsatzumgebung und insbesondere mit der jeweiligen Komponente kompatibel ist.
-
In diesem Zusammenhang wird in der
EP 1688 840 B1 vorgeschlagen, dass eine Kopfstation Kompatibilitätsinformationen aus einer an die Kopfstation übertragene Firmwaredatei entnimmt und diese mit der Einsatzumgebung abgleicht. Wird Inkompatibilität festgestellt, lehnt die Kopfstation die Durchführung der Aktualisierung ab und gibt eine entsprechende Fehlermeldung zurück.
-
ZUSAMMENFASSUNG
-
Der vorliegenden Erfindung liegt die Aufgabe zu Grunde, den Stand der Technik zu verbessern.
-
Ein erfindungsgemäßes Verfahren umfasst ein Übertragen einer auf einer Kopfstation gespeicherten Kompatibilitäts-Überprüfungsroutine von der Kopfstation, auf der eine erste Firmware nichtflüchtig gespeichert ist, auf einen mit der Kopfstation verbundenen Rechner, ein Überprüfen, unter Verwendung der auf dem Rechner ausgeführten Überprüfungsroutine, ob eine zweite Firmware mit der Kopfstation kompatibel ist, und, ein Ersetzen der ersten Firmware auf der Kopfstation durch die zweite Firmware, wenn das Überprüfen ergibt, dass die zweite Firmware mit der Kopfstation kompatibel ist,.
-
Somit findet das Überprüfen der Kompatibilität der Firmware nicht auf der Kopfstation, sondern auf dem Rechner statt und es ist trotzdem sichergestellt, dass die Überprüfung durch eine dafür vorgesehene Routine erfolgt.
-
Dabei ist unter dem Begriff „Kopfstation“, wie er im Rahmen der vorliegenden Beschreibung und der Ansprüche verwendet wird, eine Komponente eines modularen Knoten zu verstehen, deren Aufgabe es ist, die Daten und/oder Dienste der an der Kopfstation angereihten E/A-Module (bspw. über einen Feldbus, an dem die Kopfstation angeschlossen ist) verfügbar zu machen. Ferner ist unter dem Begriff „Übertragen“ im Rahmen der vorliegenden Beschreibung und der Ansprüche insbesondere ein Übermitteln von Daten mittels elektrischer Signale von der Kopfstation (Sender) zum Rechner (Empfänger) über eine drahtgebundene (bspw. LAN) oder eine drahtlose Übertragungsstrecke (bspw. WLAN) zu verstehen. In diesem Zusammenhang ist unter dem Begriff „Rechner“, wie er im Rahmen der vorliegenden Beschreibung und der Ansprüche verwendet wird, insbesondere ein handelsüblicher PC (Desktop) oder ein handelsübliches Mobilgerät (Laptop, Tablet, Smartphone, etc.) zu verstehen, welcher/welches eine Schnittstelle zum Empfangen von Daten und einen Prozessor aufweist, der eingerichtet ist, die Anweisungen der Überprüfungsroutine abzuarbeiten und zumindest im Falle einer Inkompatibilität ein Ersetzen zu verweigern und/oder den Benutzer auf die Inkompatibilität hinzuweisen.
-
Ferner ist unter dem Begriff „Kompatibilitäts-Überprüfungsroutine“, wie er im Rahmen der vorliegenden Beschreibung und der Ansprüche verwendet wird, insbesondere eine durch einen Prozessor ausführbare Anweisungssequenz zu verstehen, die ermittelt, ob die zweite Firmware mit der Hardware der Kopfstation kompatibel ist. Bspw. kann die „Kompatibilitäts-Überprüfungsroutine“ ermitteln, ob die Hardware-Konfiguration der Kopfstation einer Hardware-Konfiguration entspricht, die von der zweiten Firmware als kompatibel angegeben wird. Die „Kompatibilitäts-Überprüfungsroutine“ kann ferner auch die Kompatibilität der zweiten Firmware mit (der Firmware) der an der Kopfstation angereihten Module überprüfen. Bspw. kann die zweite Firmware ein aktualisiertes Protokoll zum Betrieb des Lokalbusses (d. h. des Busses, der die Module mit der Kopfstation verbindet) umfassen. Um somit die Interoperabilität der Kopfstation und der Module zu erhalten kann die Kompatibilitäts-Überprüfungsroutine ggf. dafür sorgen, dass eine koordinierte Aktualisierung der Komponenten eingeleitet wird, bspw. eine gleichzeitige (oder in einer bestimmten Reihenfolge ablaufende) Aktualisierung der Kopfstation und der angereihten Module.
-
Ferner ist unter dem Begriff „Firmware“, wie er im Rahmen der vorliegenden Beschreibung und der Ansprüche verwendet wird, insbesondere ein auf einem nichtflüchtigen Speicher der Kopfstation (und ggf. der Module) gespeicherter Satz an Anweisungssequenzen zu verstehen, deren Ausführung durch den Benutzer zwar mittels eines Parametersatzes an ein Einsatzszenario angepasst werden kann, die als solches jedoch nicht durch den Benutzer verändert, sondern nur gegen andere Anweisungssequenzen ausgetauscht werden können. In diesem Zusammenhang ist unter dem Begriff „Ersetzen“, wie er im Rahmen der vorliegenden Beschreibung und der Ansprüche verwendet wird, insbesondere das teilweise oder vollständige Überschreiben eines Satzes an Anweisungssequenzen mit anderen Anweisungssequenzen zu verstehen. Des Weiteren sind unter dem Begriff „Firmware“, wie er im Rahmen der vorliegenden Beschreibung und der Ansprüche verwendet wird, insbesondere auf die Hardware der Kopfstation (und ggf. der Module) zugeschnittene Anweisungssequenzen zu verstehen, d. h. Anweisungssequenzen, deren Ausführung direkt (d. h. ohne zwischengeschaltete Software) den Zustand, in dem sich die Hardware (der Kopfstation bzw. der Module) befindet, verändert.
-
Zudem wird mit dem Begriff „kompatibel“, wie er im Rahmen der vorliegenden Beschreibung und der Ansprüche verwendet wird, insbesondere eine Firmware beschrieben, deren Ausführung keine Fehler produziert und den Funktionsumfang der Kopfstation bzw. des Feldbusknotens nicht (wesentlich) einschränkt.
-
Das Verfahren kann ferner unter Verwendung der auf dem Rechner ausgeführten Überprüfungsroutine überprüfen, ob die zweite Firmware mit allen an der Kopfstation angereihten E/A-Modulen kompatibel ist und, wenn das Überprüfen ergibt, dass die zweite Firmware nicht mit allen an der Kopfstation angereihten E/A-Modulen kompatibel ist, eine Warnung auf dem Rechner ausgeben.
-
Bspw. kann die Warnung dazu dienen dem Benutzer darauf hinzuweisen, dass auch die Firmware eines, mehrerer oder aller E/A-Module aktualisiert werden muss, um den modularen Knoten weiter nutzen zu können.
-
Vorzugsweise bindet der modulare Knoten an den E/A-Modulen angeschlossene Feldgeräte mittels eines durch die Kopfstation gesteuerten Lokalbusses an einen Feldbus an.
-
Dabei ist unter dem Begriff „Lokalbus“, wie er im Rahmen der vorliegenden Beschreibung und der Ansprüche verwendet wird, insbesondere ein Bus zu verstehen, über den (nur) die an die Kopfstation angereihten E/A-Module miteinander und mit der Kopfstation (signaltechnisch) verbunden sind. In diesem Zusammenhang sind unter dem Begriff „Feldgeräte“, wie er im Rahmen der vorliegenden Beschreibung und der Ansprüche verwendet wird, insbesondere mit den E/A-Modulen (signaltechnisch) verbundene (bspw. an den E/A-Modulen angeschlossene) Sensoren und/oder Aktoren zu verstehen.
-
Vorzugsweise umfasst das Ersetzen der ersten Firmware auf der Kopfstation durch die zweite Firmware auch ein Ersetzen der Überprüfungsroutine.
-
Bspw. kann die neue Überprüfungsroutine mehr oder andere Firmware-Versionen als kompatibel akzeptieren (als die ersetze Überprüfungsroutine) oder bei der Prüfung Aspekte berücksichtigen, die durch die ersetzte Überprüfungsroutine nicht berücksichtigt wurden.
-
Das Verfahren kann ferner ein Anfordern, durch die auf dem Rechner ausgeführte Überprüfungsroutine, von ersten Daten, insbesondere einer Seriennummer, aus denen sich ein Hardwarestand der Kopfstation ableiten lässt, von der Kopfstation, und ein Abgleichen der ersten Daten mit zweiten Daten hinsichtlich der zweiten Firmware, wobei die zweiten Daten angeben, mit welchem Hardwarestand die zweite Firmware kompatibel ist, aufweisen.
-
Das Verfahren kann ferner ein Anfordern, durch die auf dem Rechner ausgeführte Überprüfungsroutine, von dritten Daten, mit denen sich ein auf der Kopfstation gespeichertes Aktualisierungsprogramm bestimmen lässt, von der Kopfstation, und ein Abgleichen der dritten Daten mit vierten Daten, wobei die vierten Daten angeben, welche Firmware durch das auf der Kopfstation gespeicherte Aktualisierungsprogramm installiert werden kann, aufweisen.
-
Das Verfahren kann ferner ein Austauschen des Aktualisierungsprogramms mit einem Aktualisierungsprogramm, das die zweite Firmware auf der Kopfstation installieren kann, aufweisen, wenn das Abgleichen der dritten Daten mit den vierten Daten ergibt, dass die zweite Firmware durch das Aktualisierungsprogramm auf der Kopfstation nicht installiert werden kann.
-
Das Austauschen des Aktualisierungsprogramms kann bspw. durch ein Ersetzen der ersten Firmware auf der Kopfstation (bspw. durch eine dritte Firmware) bewirkt werden.
-
Vorzugsweise wird die Kompatibilitäts-Überprüfungsroutine in einem Browser des Rechners ausgeführt. Bspw. kann die Kompatibilitäts-Überprüfungsroutine (bzw. Komponenten der Kompatibilitäts-Überprüfungsroutine) in HTML und/oder JavaScript geschrieben sein.
-
Eine erfindungsgemäße Kopfstation kann bspw. einen HTTP-Server umfassen, welcher eingerichtet ist, eine auf der Kopfstation gespeicherte Kompatibilitäts-Überprüfungsroutine von der Kopfstation, auf der eine erste Firmware nichtflüchtig gespeichert ist, auf einen mit der Kopfstation verbundenen Rechner zu übertragen und in Reaktion auf den Empfang von Daten, die eine zweite Firmware repräsentieren, eine Ersetzung der ersten Firmware durch die zweite Firmware anzustoßen.
-
Dabei versteht es sich, dass die erfindungsgemäße Kopfstation zur Durchführung (von Schritten) des erfindungsgemäßen Verfahrens eingerichtet sein kann und das erfindungsgemäße Verfahren unter Verwendung der erfindungsgemäßen Kopfstation implementiert werden kann.
-
Figurenliste
-
Die Erfindung wird nachfolgend in der detaillierten Beschreibung anhand von Ausführungsbeispielen erläutert, wobei auf Zeichnungen Bezug genommen wird, in denen:
- 1 ein Feldbussystem;
- 2 einen Feldbusknoten und an den Feldbusknoten angeschlossene Feldbusgeräte;
- 3 einen Feldbuskonten und einen mit dem Feldbusknoten verbundenen Rechner; und
- 4 ein Flussdiagramm eines Prozesses zum Aktualisieren einer Kopfstation illustriert.
-
Dabei sind in den Zeichnungen gleiche oder funktional ähnliche Elemente durch gleiche Bezugszeichen gekennzeichnet.
-
DETAILLIERTE BESCHREIBUNG
-
1 zeigt ein Blockdiagramm eines Feldbussystems 10. Das Feldbussystem 10 umfasst eine übergeordnete Steuereinheit 20, mit der eine Vielzahl an modularen Feldbusknoten 100 über einen Feldbus 30 verbunden sind. Die übergeordnete Steuereinheit 20 kann sowohl zur Überwachung als auch zur Regelung einer Anlage (nicht gezeigt) dienen, die durch das Feldbussystem 10 gesteuert wird.
-
Wenn die übergeordnete Steuereinheit 20 eine Anlage überwacht, kann die übergeordnete Steuereinheit 20 von den Feldbusknoten 100 zyklisch oder azyklisch Zustandsdaten empfangen, die den Zustand der Anlage beschreiben und ein Fehlersignal oder ein Alarmsignal erzeugen, wenn der Zustand der Anlage von einem gewünschten/erlaubten Zustand oder Zustandsbereich (substantiell) abweicht. Wenn die übergeordnete Steuereinheit 20 die Anlage (nicht nur überwacht, sondern auch) regelt, kann die übergeordnete Steuereinheit 20 von den Feldbusknoten 100 zyklisch oder azyklisch Zustandsdaten empfangen und unter Berücksichtigung der Zustandsdaten Steuerdaten ermitteln, die zu den Feldbusknoten 100 übertragen werden.
-
2 zeigt einen beispielhaften modularen Feldbusknoten 100 bestehend aus einer Kopfstation 110 und zwei an die Kopfstation 110 angereihten E/A-Modulen 120, 130 an denen Feldgeräte 140, 150, 160, 170, wie bspw. Sensoren und Aktoren, angeschlossen sind. Während des Betriebs lesen die E/A-Module 120, 130 über die Eingänge Sensorsignale ein und erzeugen aus den Sensorsignalen Zustandsdaten, die über den Lokalbus 180 an die Kopfstation 110 übertragen werden. Die Kopfstation 110 kann die Zustandsdaten lokal verarbeiteten und/oder (ggf. in modifizierter Form) an die übergeordnete Steuereinheit 20 weiterleiten. Die übergeordnete Steuereinheit 20 (oder bei einer lokalen Verarbeitung die Kopfstation 110) kann dann unter Berücksichtigung der Zustandsdaten Steuerdaten erzeugen.
-
Die durch die übergeordnete Steuereinheit 20 erzeugten Steuerdaten können dann über den Feldbus 30 an (die gleiche oder) eine (andere) Kopfstation 110 übertragen werden. Die zur Kopfstation 110 übertragenen (bzw. die durch die Kopfstation 110 erzeugten) Steuerdaten werden dann (ggf. in modifizierter Form) an die E/A-Module 120,130 weitergeleitet/übertragen. Die E/A-Module 120,130 empfangen die Steuerdaten und geben den Steuerdaten entsprechende Steuersignale an den Ausgängen, an denen die Aktoren angeschlossen sind, aus. Die Kommunikation von Daten zwischen den Komponenten des Feldbussystems 10 und die Abbildung der Sensorsignale auf Zustandsdaten und die Abbildung der Steuerdaten auf Steuersignale kann dabei durch eine Konfiguration der Feldbusknoten 100 an unterschiedliche Einsatzszenarien angepasst werden.
-
Dazu sind einige oder alle Komponenten des Feldbussystems 10 mit einer Firmware versehen, die es ermöglicht, einen Konfigurationsdatensatz zu empfangen und zu speichern und die Verarbeitung von Signalen/Daten unter Berücksichtigung des Konfigurationsdatensatzes durchzuführen. Die Möglichkeit der Anpassung ist somit aber auf Änderungen begrenzt, die durch einen geänderten Konfigurationsdatensatz erzielt werden können, wohingegen darüber hinausgehende Änderungen eine Ersetzung der Firmware der Komponenten des Feldbussystems 10 erfordern. Eine solche Ersetzung kann bspw. der Beseitigung von Fehlern oder allgemein der Verbesserung der Firmware dienen, so dass mit der Ersetzung eine Aktualisierung (Update) der Firmware einhergeht. Natürlich ist aber auch der umgekehrte Weg möglich, bei dem eine Firmware durch eine frühere Version ersetzt wird, bspw. weil nicht für alle Komponenten des Feldbussystems 10 eine aktualisierte Version verfügbar ist und bspw. Komponenten mit aktualisierter Firmware-Version und Komponenten mit nicht-aktualisierter Version nicht (oder nur beschränkt) zusammenarbeiten können.
-
Die Ersetzung der Firmware der Kopfstation 110 involviert, wie in 3 illustriert, einen mit der Kopfstation 110 verbundenen Rechner 40. Der mit der Kopfstation 110 verbundene Rechner 40 kann dabei ein Rechner 40 sein, der eigens für die Aktualisierung (temporär) mit der Kopfstation 110 (bspw. über eine TCP-Verbindung) verbunden wird, oder ein Rechner 40, der (dauerhaft) Teil des Feldbussystems 10 ist, wie bspw. die übergeordnete Steuereinheit 20. Zum Durchführen einer Ersetzungs-Routine kann der Rechner 40 eine Verbindung zur Kopfstation 110 aufbauen und eine auf der Kopfstation 110 gespeicherte Kompatibilitäts-Überprüfungsroutine anfordern. Wie in 4 gezeigt, kann die Kopfstation 110 in Reaktion auf die Anfrage in Schritt 200 die Kompatibilitäts-Überprüfungsroutine auf den mit der Kopfstation 110 verbundenen Rechner 40 übertragen.
-
Wie in 5 gezeigt, kann der Rechner 40 mit einem Browser versehen sein, mit dem ein Benutzer des Rechners 40 zur IP-Adresse der Kopfstation 110 navigieren kann, wobei der HTTP-Server der Kopfstation 110 eine Übertragung von Dateien (bspw. Dateien in HTML und/oder JavaScript), die für das Firmwareupdate hinterlegt sind, ermöglicht. Besagte Dateien können im Browser der Kopfstation 110 interpretiert und ausgeführt werden, wodurch dem Benutzer eine Benutzeroberfläche bereitgestellt wird, mittels der er/sie die Firmwareaktualisierung steuern kann. Dabei kann, wenn die E/A-Module 120, 130 ebenfalls eine Firmware aufweisen, welche über die Kopfstation 110 aktualisiert werden kann, der Benutzer in die Lage versetzt werden, das oder die zu aktualisierenden Geräte (d. h. die Kopfstation 110 und/oder eines oder mehrere der an der Kopfstation angereihten E/A-Module 120, 130) auszuwählen und jedem ausgewählten Gerät eine Firmwaredatei zuzuordnen (die bspw. von einem Hersteller des jeweiligen Geräts bereitgestellt und über das Internet auf den Rechner 40 heruntergeladen wurde).
-
Wenn die E/A-Module 120, 130 hingegen keine Firmware aufweisen oder eine Firmware, die nicht über die Kopfstation 110 aktualisiert werden kann, kann auch vorgesehen sein, dass der Benutzer nur eine Firmwaredatei auswählen muss (die dann aus Mangel an Alternativen automatisch der Kopfstation 110 zugeordnet wird). Nachdem aus der oder den zugeordneten Firmwaredateien Informationen hinsichtlich der Firmwareversion extrahiert und eine auf der Kopfstation 110 hinterlegte Datei, welche Informationen hinsichtlich der Hardware der Kopfstation 110 und/oder der Hardware der E/A-Module 120, 130 umfasst, ausgewertet wurde, kann die im Browser ausgeführte Überprüfungsroutine (bspw. ein JavaScript-Programm), gemäß Schritt 210 der 4 überprüfen, ob die Firmwareversion mit der Hardware der Kopfstation 110 bzw. mit der Hardware des oder der E/A-Module 120, 130 kompatibel ist. Bspw. kann die auf der Kopfstation 110 hinterlegte Datei eine oder mehrere Seriennummern umfassen, aus der sich ein Hardwarestand der Kopfstation 110 und/oder der E/A-Module 120, 130 ableiten lässt.
-
Wenn das Überprüfen ergibt, dass die Firmware mit der Kopfstation 110 kompatibel ist, kann, wie in Schritt 220 in 4 gezeigt, die Firmware auf der Kopfstation 110 durch eine andere Firmware ersetzt werden. Dabei kann das Firmwareupdate, wie in 5 gezeigt, durch den Benutzer ausgelöst werden, wenn die Überprüfung ergibt, dass die Firmware und die Hardware zueinander kompatibel sind. Löst der Benutzer das Firmwareupdate aus, wird die Firmwaredatei vom Rechner 40 auf die Kopfstation 110 übertragen und dort durch ein Aktualisierungsprogramm installiert. Das Ersetzen der Firmware auf der Kopfstation durch die zweite Firmware kann auch ein Ersetzen der Überprüfungsroutine umfassen. D. h. die auf der Kopfstation 110 hinterlegten Dateien, die zum Rechner 40 übertragen und im Browser des Rechners 40 ausgeführt wurden, können im Rahmen des Ersetzens der Firmware überschrieben werden.
-
Ebenso kann das auf der Kopfstation 110 gespeicherte Aktualisierungsprogramm im Rahmen des Firmwareupdates ausgetauscht werden. Somit können Firmwareaktualisierungen inkrementell, bspw. in zwei (oder mehr) Stufen erfolgen. Z. B. kann es vorkommen, dass die Zielfirmware zwar kompatibel ist, aber von der gegenwärtigen Firmware bzw. dem gegenwärtig auf der Kopfstation 10 gespeicherten Aktualisierungsprogramm nicht verarbeitet werden kann. In diesem Fall kann es nötig sein, ein oder mehrere Firmwareupdates durchzuführen, bis die Zielfirmware installiert werden kann. Ebenso kann es vorkommen, dass die Zielfirmware zwar kompatibel ist, aber von der gegenwärtig auf der Kopfstation 10 gespeicherten Überprüfungsroutine nicht verarbeitet werden kann. In diesem Fall kann es ebenfalls nötig sein, ein oder mehrere Firmwareupdates durchzuführen, bis die Zielfirmware durch die Überprüfungsroutine freigegeben werden kann.
-
Bezugszeichenliste
-
- 10
- Feldbussystem
- 20
- Steuereinheit
- 30
- Feldbus
- 40
- Rechner
- 100
- (Feldbus-)Knoten
- 110
- Kopfstation
- 120
- E/A-Modul
- 130
- E/A-Modul
- 140
- Feldgerät
- 150
- Feldgerät
- 160
- Feldgerät
- 170
- Feldgerät
- 180
- Lokalbus
- 200
- Prozessschritt
- 210
- Prozessschritt
- 220
- Prozessschritt
-
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
-