-
Die Erfindung betrifft ein Verfahren zur Durchführung eines Betriebssystem-Updates für ein Busgerät einer busorientierten programmierbaren Elektroinstallation, sowie ein entsprechendes Computerprogramm. Weiterhin betrifft die Erfindung ein Busgerät, geeignet zur Durchführung eines Betriebssystem-Updates. Ferner betrifft die Erfindung ein computerlesbares Medium, das auf einem Computer ausführbare Befehle aufweist zur Durchführung eines Betriebssystem-Updates für ein Busgerät einer busorientierten programmierbaren Elektroinstallation.
-
Um in modernen Gebäuden bzw. Häusern eine einfache und komfortable Bedienung der verschiedenen Busgeräte zu ermöglichen, können diese über einen Installationsbus angesteuert werden. Ein solcher Installationsbus ist beispielsweise der europäische Installationsbus (EIB), der in dem KNX-Standard beschrieben ist.
-
Eine Gebäudeinstallationseinrichtung ermöglicht es, einzelne Gebäudeinstallationen, wie beispielsweise eine Lampe oder einen Heizkörper, individuell gemäß einem vorgegebenen Betriebsplan zu steuern, indem an jeder Gebäudeinstallation ein Busgerät bereitgestellt wird, welches die jeweilige Gebäudeinstallation steuert, also beispielsweise automatisch eine Lampe an- und ausschaltet oder einen Thermostat eines Heizkörpers einstellt. Die Busgeräte können dabei untereinander und auch mit einem zentralen Konfigurationsgerät über einen Gebäudeinstallationsbus verbunden sein, so dass die Geräte gegenseitig Daten austauschen können und die Busgeräte zentral über das Konfigurationsgerät konfiguriert oder re-konfiguriert werden können. Die unter den Busgeräten ausgetauschten Daten können beispielsweise Sensordaten oder Steuerdaten sein.
-
Das zugrundliegende Bussystem basiert darauf, dass jeder Busteilnehmer über einen eigenen Mikroprozessor verfügt und somit selbständig und unabhängig von einem zentralen Prozessor seine Daten verwaltet. Jedem Busteilnehmer ist hierzu ein Applikationsprogramm mit Kommunikationsobjekten und Parametern zugeordnet. Bei der Inbetriebsetzung eines derartigen Bussystems müssen die Kommunikationsbeziehungen der Busteilnehmer projektiert werden. Im Falle des KNX-Busses kommt hierbei häufig die Engineering Tool-Software (ETS) zum Einsatz. Hierbei handelt es sich um eine Software, die auf einem PC bzw. Laptop lauffähig ist und mit dem Bus verbunden wird. Einige mögliche Arten der Verbindungen sind RS232, USB, Funk oder Ethernet. Bei der ETS handelt es sich um ein datenbankbasiertes graphisches Werkzeug zur Projektierung einer busorientierten programmierbaren Elektroinstallation. In der ETS-Datenbank sind die Projektierungsdaten für jeden einzelnen Busteilnehmer bzw. jedes einzelne Applikationsprogramm gespeichert.
-
Der Austausch von Applikationsprogrammen bei Busgeräten ist schon länger bekannt und wird von vielen Herstellern ermöglicht, auch insbesondere für Endkunden im Feld.
-
Die amerikanische Patentanmeldung
US20150074658A1 offenbart ein Verfahren für die Bereitstellung von Software-Updates für Client-Geräte, wobei ein Client-Gerät nach dem Empfang eines Hinweises, dass ein Software-Update verfügbar ist, mit dem Herunterladen des Software-Updates wartet, bis definierte Bedingungen erfüllt sind.
-
Die amerikanische Patentanmeldung
US20110188684A1 offenbart ein Verfahren zur Herstellung eines Firmware-aktualisierten programmier-baren Hörgeräts, das mindestens einen Prozessor und eine Speichereinheit umfasst, zur Speicherung der Hörgeräte-Firmware.
-
Die deutsche Patentanmeldung
DE102012212412A1 offenbart eine Netzwerkeinrichtung und ein Verfahren zum Betreiben einer Netzwerkeinrichtung für ein Automatisierungsnetzwerk. Die Netzwerkeinrichtung ist mit Hilfe einer Echtzeit-anwendung zur Bereitstellung einer Funktion der Netzwerkeinrichtung eingerichtet, wobei die Echtzeitanwendung mindestens einen vorbestimmten aktualisierbaren Parameter hat. Die Netzwerkeinrichtung weist eine Speichereinrichtung zum Speichern von Aktualisierungsdaten für den aktualisierbaren Parameter in einem Aktualisierungsspeicherbereich und zum Speichern von Anwendungsdaten für die Echtzeitanwendung in einem Anwendungsspeicherbereich auf, wobei der Aktualisierungsspeicherbereich und der Anwendungsspeicher-bereich voneinander getrennt sind.
-
Die amerikanische Patentanmeldung
US20130185548A1 offenbart ein Verfahren für die Bereitstellung von Over-the-Air (OTA)-Software-Updates für Endgeräte.
-
Bisher ist es aber für Endkunden im Feld nicht möglich für ein Busgerät einer busorientierten programmierbaren Elektroinstallation (z.B. KNX-Bus) ein Betriebssystemupdate oder einen Betriebssystemtausch durchzuführen. Dafür muss der Kunde ein Busgerät ausbauen, einschicken und dann wieder einbauen. Dies ist umständlich, kosten- und zeitintensiv.
-
Es ist daher die Aufgabe der vorliegenden Erfindung, ein Betriebssystem-Update bzw. einen Betriebssystemtausch für ein Busgerät einer busorientierten programmierbaren Elektroinstallation zu erleichtern.
-
Die Aufgabe wird gelöst durch ein Verfahren zur Durchführung eines Betriebssystem-Updates für ein Busgerät (z.B. KNX-Busteilnehmer) einer busorientierten programmierbaren Elektroinstallation (z.B. KNX-System), wobei das Busgerät einen Prozessor (z.B. Mikrokontroller) und einen Speicher umfasst, wobei der Speicher einen ersten Speicherbereich für das jeweilige Betriebssystem und einen zweiten Speicherbereich für die Applikationen umfasst, das Verfahren umfasst die folgenden Schritte:
- - Erzeugen einer Update-Applikation, in die ein neues Betriebssystem eingebettet ist;
- - Laden der Update-Applikation, die das neue Betriebssystem umfasst, in den zweiten Speicherbereich;
- - Starten der Update-Applikation, wobei die Update-Applikation das Busgerät veranlasst, dass bei einem Neustart des Busgerätes automatisch die Update-Applikation das neue Betriebssystem in den ersten Speicherbereich kopiert, wobei die Update-Applikation das Busgerät so parametriert, dass beim Kopieren des neuen Betriebssystems in den ersten Speicherbereich das Busgerät nur den zum Kopieren benötigten Strom verbraucht.
-
Die Aufgabe wird weiterhin gelöst durch ein Verfahren zur Durchführung eines Betriebssystem-Updates für ein Busgerät einer busorientierten programmierbaren Elektroinstallation, wobei das Busgerät einen Prozessor und einen Speicher umfasst, wobei der Speicher einen ersten Speicherbereich für das jeweilige Betriebssystem und einen zweiten Speicherbereich für die Applikationen umfasst, das Verfahren umfasst die folgenden Schritte:
- - Erzeugen einer Update-Applikation, in die ein neues Betriebssystem eingebettet ist;
- - Laden der Update-Applikation, die das neue Betriebssystem umfasst, in den zweiten Speicherbereich;
- - Starten der Update-Applikation, wobei die Update-Applikation das Busgerät veranlasst, dass bei einem Neustart des Busgerätes automatisch die Update-Applikation das neue Betriebssystem in den ersten Speicherbereich kopiert,
wobei vor dem Kopieren des neuen Betriebssystems in den ersten Speicherbereich individuelle Gerätedaten des Busgerätes von der Update-Applikation aus dem alten Betriebssystem gelesen und in das neue Betriebssystem integriert werden.
-
Mit Vorteil ist die Update-Applikation vollständig (Runtime Library (Laufzeitbibliothek) und Hardware Treiber) und benötigt keine Teile des alten Betriebssystems. Beim Start der Update-Applikation übernimmt diese die volle Kontrolle des Busgerätes und trägt sich so in den zweiten Speicherbereich für die Applikationen ein, dass sie bei einem Neustart automatisch aufgerufen wird. Das Erzeugen der Update-Applikation, die ein neues Betriebssystem als Binärimage oder als Bitplane umfasst, kann z.B. durch ein entsprechendes Upload-Tool, z.B. ein Konfigurationsgerät bzw. eine ETS (Engineering-Tool-Software) erfolgen. Mit Vorteil umfasst die Update-Applikation das neue Betriebssystem als Binärimage oder als Bitplane in Form einer geeigneten Binarisierung.
-
Eine erste vorteilhafte Ausgestaltung der Erfindung liegt darin, dass beim Kopieren des neuen Betriebssystems in den ersten Speicherbereich das alte Betriebssystem überschrieben wird. Dadurch ist sichergestellt, dass es keine Konflikte zwischen dem neuen und dem alten Betriebssystem gibt. Ausserdem erfolgt durch das Überschreiben eine effiziente Speicherausnutzung.
-
Ein Vorteil liegt darin, dass die Update-Applikation das Busgerät so parametriert, dass beim Kopieren des neuen Betriebssystems in den ersten Speicherbereich das Busgerät nur den zum Kopieren benötigten Strom verbraucht. Dadurch können längere Netzausfälle überstanden werden, ohne dass der Flashvorgang (z.B. eine persistente Speicherung in einen Flash-EEPROM) unterbrochen wird.
-
Ein weiterer Vorteil liegt darin, dass vor dem Kopieren des neuen Betriebssystems in den ersten Speicherbereich individuelle Gerätedaten (z.B. die Seriennummer, das Fertigungsdatum, die Individuelle Adresse und Kalibrierdaten aus der Endprüfung) des Busgerätes von der Update-Applikation aus dem alten Betriebssystem gelesen und in das neue Betriebssystem integriert werden. Die Integration bzw. das Schreiben der individuellen Gerätedaten in das neue Betriebssystem kann durch die Update-Applikation im Gerät oder durch ein externes Tool (Konfigurationsgerät, z.B. ETS) erfolgen. Dabei werden die Daten aus dem alten Betriebssystem ausgelesen und in das neue gepatcht. Wenn das Update abgeschlossen ist, hat das Gerät alle individuellen Daten bereits und kann direkt wieder verwendet/angesprochen werden.
-
Eine weitere vorteilhafte Ausgestaltung der Erfindung liegt darin, dass die individuelle Gerätedaten (z.B. die Seriennummer, das Fertigungsdatum, die Individuelle Adresse und Kalibrierdaten aus der Endprüfung) des Busgerätes nach dem Kopieren des neuen Betriebssystems über ein externes Tool (z.B. ETS) in das neue Betriebssystem integriert werden. Dies kann durch ein externes Tool (Konfigurationsgerät, z.B. ETS) erfolgen.
-
Das integrieren der Daten kann somit nach dem Upload in das Gerät oder vor dem Upload (im PC) erfolgen.
-
Eine weitere vorteilhafte Ausgestaltung der Erfindung liegt darin, dass das Laden der Update-Applikation, die das neue Betriebssystem umfasst, über eine Busschnittstelle (KNX) des Busgerätes zur busorientierten programmierbaren Elektroinstallation erfolgt. Bei dieser Ausgestaltung ist kein externes Tool (als Upload-Tool) erforderlich, denn ein anderes Busgerät des Gebäudeautomatisierungssystems wird als Upload-Tool verwendet.
-
Eine weitere vorteilhafte Ausgestaltung der Erfindung liegt darin, dass das Laden der Update-Applikation, die das neue Betriebssystem umfasst, über eine externe Schnittstelle des Busgerätes erfolgt. Z.B. kann das Laden der Update-Applikation über eine USB-Schnittstelle des Busgerätes durch ein Konfigurationsgerät (z.B. ETS erfolgen). Dadurch wird beim Ladevorgang der Busverkehr (Traffic) nicht beeinträchtigt.
-
Eine weitere vorteilhafte Ausgestaltung der Erfindung liegt darin, dass das Busgerät einen Busankoppler umfasst, und das Betriebssystem-Update für einen Kontroller des Busankopplers erfolgt. Z.B. besteht ein KNX-Busgerät aus einem Busankoppler und einem Busendgerät. Die Busendgeräte besitzen eine eigene Intelligenz und dazu üblicherweise einen Mikrokontroller mit entsprechenden Speichermodulen. Ein Busankoppler besteht aus einem Übertragermodul und einem Mikrokontroller mit entsprechenden Speichermodulen. EEPROM oder Flash-Speicher enthalten die Applikationsprogramme mit den dazugehörigen Konfigurations-daten, aber auch das Betriebssystem. Das erfindungsgemässe Verfahren zur Durchführung eines Betriebssystem-Updates kann somit für einen Kontroller des Busankopplers aber auch für einen Kontroller eines Busendgerätes verwendet werden.
-
Die Aufgabe wird weiterhin gelöst durch ein Computerprogramm zur Durchführung eines Betriebssystem-Updates für ein Busgerät einer busorientierten programmierbaren Elektroinstallation mit Instruktionen zur Ausführung des erfindungsgemässen Verfahrens. Dadurch kann ein Betriebssystem-Update computerunterstützt und effektiv erfolgen, z.B. durch einen Personal Computer (PC), insbesondere durch einen Endkunden im Feld.
-
Die Aufgabe wird weiterhin gelöst durch ein computerlesbares Medium, das auf einem Computer ausführbare Befehle aufweist zur Durchführung eines Betriebssystem-Updates gemäss dem erfindungsgemässen Verfahren. Dadurch kann das Computerprogramm zur Durchführung eines Betriebssystem-Updates sehr leicht auf einem Computer (insbesondere bei einem Endkunden im Feld) implementiert bzw. installiert werden.
-
Die Aufgabe wird weiterhin gelöst durch Busgerät (Busteilnehmer, z.B. Aktor oder Sensor) einer busorientierten programmierbaren Elektroinstallation, wobei das Busgerät einen Prozessor (z.B. Mikrokontroller) und einen Speicher umfasst, wobei der Speicher einen ersten Speicherbereich für das jeweilige Betriebssystem und einen zweiten Speicherbereich für die Applikationen umfasst, wobei das Busgerät dazu eingerichtet ist über eine Schnittstelle, eine Update-Applikation, in die ein neues Betriebssystem eingebettet oder gepackt ist (z.B. in Form einer geeigneten Binarisierung, z.B. als Binärimage), in den zweiten Speicherbereich zu laden, und wobei nach Starten der Update-Applikation das Busgerät veranlasst wird, dass bei einem Neustart des Busgerätes automatisch die Update-Applikation das neue Betriebssystem in den ersten Speicherbereich kopiert, wobei die Update-Applikation das Busgerät so parametriert, dass beim Kopieren des neuen Betriebssystems in den ersten Speicherbereich das Busgerät nur den zum Kopieren benötigten Strom verbraucht. Bei einem solchen Busgerät kann ein Endkunde im Feld einen Betriebssystem-Update durchführen. Ein Kunde braucht für ein Betriebssystem-Update das Busgerät nicht ausbauen, an den Hersteller oder Lieferanten einschicken, und dann wieder einbauen.
-
Die Aufgabe wird auch gelöst durch ein Busgerät einer busorientierten programmierbaren Elektroinstallation, wobei das Busgerät einen Prozessor (Mikrokontroller) und einen Speicher umfasst, wobei der Speicher einen ersten Speicherbereich für das jeweilige Betriebssystem und einen zweiten Speicherbereich für die Applikationen umfasst, wobei das Busgerät dazu eingerichtet ist, über eine Schnittstelle, eine Update-Applikation, in die ein neues Betriebssystem eingebettet ist, in den zweiten Speicherbereich zu laden, und wobei nach Starten der Update-Applikation das Busgerät veranlasst wird, dass bei einem Neustart des Busgerätes automatisch die Update-Applikation das neue Betriebssystem in den ersten Speicherbereich kopiert, wobei vor dem Kopieren des neuen Betriebssystems in den ersten Speicherbereich individuelle Gerätedaten des Busgerätes von der Update-Applikation aus dem alten Betriebssystem gelesen und in das neue Betriebssystem integriert werden.
-
Die Erfindung sowie vorteilhafte Ausführungen der vorliegenden Erfindung werden am Beispiel der nachfolgenden Figuren erläutert. Dabei zeigen:
- 1 eine erste beispielhafte Anordnung für ein Gebäudeautomatisierungssystem mit zwei beispielhaften Busgeräten,
- 2 einen beispielhaften Busteilnehmer einer busorientierten programmierbaren Elektroinstallation,
- 3 eine zweite beispielhafte Anordnung für ein Gebäudeautomatisierungssystem mit mehreren beispielhaften Busteilnehmern,
- 4 eine erste beispielhafte Aufbaustruktur für einen Speicher eines Busgerätes einer busorientierten programmierbaren Elektroinstallation,
- 5 eine zweite beispielhafte Aufbaustruktur für einen Speicher eines Busgerätes einer busorientierten programmierbaren Elektroinstallation, und
- 6 ein beispielhaftes Ablaufdiagramm für ein Verfahren zur Durchführung eines Betriebssystem-Updates für ein Busgerät einer busorientierten programmierbaren Elektroinstallation.
-
Gebäudeinstallationen, insbesondere Elektroinstallationen zur Steuerung von Lichtquellen, Jalousien, Ventilatoren, Heizungen, Alarmanlagen etc. werden häufig unter Verwendung von standardisierter Bustechnik realisiert, z.B. mit einem KNX-Bussystem. Mit einem KNX-Bussystem werden in einem Gebäude Bedienelemente (Sensoren) und entsprechende Aktoren miteinander verbunden und angesteuert. Jeder Teilnehmer eines solchen Bussystems verfügt über einen eigenen Mikroprozessor und kann somit selbständig und unabhängig von einem zentralen Prozessor seine Daten verwalten. Jedem Busgerät wird hierzu ein Applikationsprogramm mit entsprechenden Kommunikationsobjekten und Parametern zugeordnet. Bei der Inbetriebnahme eines KNX-Bussystems (oder einem ähnlichen System) müssen die Kommunikationsbeziehungen und Parameter der Busgeräte projektiert werden. Für die Projektierung von KNX-Bussystemen wird üblicherweise die Engineering-Tool-Software (ETS) verwendet. Bei der ETS handelt es sich um ein datenbankbasiertes grafisches Werkzeug zur Projektierung von busorientierten programmierbaren Elektroinstallationen. Unter Verwendung einer Datenbank werden in der ETS die Projektierungsdaten, d. h. die Kommunikationsbeziehungen und die Geräteparameter, für jedes Busgerät bzw. jedes Applikationsprogramm separat erstellt und abschließend über eine Schnittstelle (z.B. USB Datenschnittstelle) in das Bussystem und deren Busgeräte übertragen bzw. eingespeist.
-
Eine Gebäudeinstallationseinrichtung ermöglicht es, einzelne Gebäudeinstallationen, wie beispielsweise eine Lampe oder einen Heizkörper, individuell gemäß einem vorgegebenen Betriebsplan zu steuern, indem an jeder Gebäudeinstallation ein Busgerät bereitgestellt wird, welches die jeweilige Gebäudeinstallation steuert, also beispielsweise automatisch eine Lampe an- und ausschaltet oder einen Thermostat eines Heizkörpers einstellt. Die Busgeräte können dabei untereinander und auch mit einem zentralen Konfigurationsgerät über einen Gebäudeinstallationsbus verbunden sein, so dass die Geräte gegenseitig Daten austauschen können und die Busgeräte zentral über das Konfigurationsgerät konfiguriert oder re-konfiguriert werden können. Die unter den Busgeräten ausgetauschten Daten können beispielsweise Sensordaten oder Steuerdaten sein.
-
1 zeigt eine beispielhafte Anordnung für ein Gebäudeautomatisierungssystem 10 basierend auf einer busorientierten programmierbaren Elektroinstallation mit zwei beispielhaften Busgeräten G1, G2, die über einen Installationsbus B1, z.B. ein KNX-Bus, verbunden sind. Bei der Darstellung gemäss 1 handelt es sich nur um eine schematische Darstellung, wobei die Grössenproportionen der dargestellten Elemente nicht realitätsgetreu dargestellt sind.
-
Ein Busgerät G1, G2 weist in der Regel einen Prozessor MK1 als Steuereinheit auf, beispielsweise einen Mikrokontroller. Die Steuereinheit MK1 kann Steuerbefehle für die angeschlossene Gebäudeinstallation 10 erzeugen und/oder Sensordaten von der Gebäudeinstallation 10 auswerten. Um der Steuereinheit SE einen Datenaustausch mit dem Gebäudeinstallationsbus B1 zu ermöglichen, weist ein Busgerät G1, G2 in der Regel eine spezielle Anschlussschaltung als Busankoppler BK1 auf. Hierbei kann es sich beispielsweise um einen integrierten Schaltkreis (IC Integrated Circuit) handeln. Die Anschlussschaltung BK1 umfasst auch die elektrischen Anschlüsse zum Anschließen des Busgeräts G1, G2 an den Gebäudeinstallationsbus B1.
-
Ein Prozessor MK1 als Steuereinheit eines Busgerätes G1 weist in der Regel folgende Speichertypen auf:
- - Einen RAM-Speicher (Random Access Memory) zum Speichern von Daten, die während des Betriebs anfallen.
- - Einen ROM-Speicher (Read Only Memory), in dem z.B. auch individuelle Gerätedaten abgelegt sein können.
- - Einen Flash-Speicher (z.B. EEPROM) für die persistente Speicherung der Applikationsprogramme und der dazugehörigen Projektierungsdaten, sowie des Betriebssystems. In einem Teil des Flash-Speichers können auch die individuellen Gerätedaten abgelegt sein.
-
In der Darstellung gemäss 1 umfasst der Prozessor MK1 des Busgerätes G1 einen beispielhaften Flash-Speicher SM2 mit einem ersten und zweiten Speicherbereich SP1' bzw. SP2'. Im ersten Speicherbereich SP1' wird das jeweilige Betriebssystem für das Busgerät G1 abgelegt, im zweiten Speicherbereich SP2' werden die Applikationen (Programme und die dazugehörigen Parametrierungen) für das Busgerät G1 abgelegt.
-
In der Darstellung gemäss 1 ist beispielhaft dargestellt, dass der Prozessor MK1 des Busgerätes G1 mit einem weiteren beispielhaften Speicher SM1 mit einem ersten und zweiten Speicherbereich SP1 bzw. SP2 verbunden sein kann. Beim Speicher SM1 kann es sich z.B. um eine Festplatte oder einen Flash-Speicher handeln. In dem einen Speicherbereich des Speichers SM1 können Applikationen (Applikationsprogramme und dazugehörige Parametrierung) abgelegt werden, im anderen Speicherbereich das Betriebssystem.
-
Mit Vorteil handelt es sich beim Busgerät G1 um einen Busteilnehmer (z.B. Aktor oder Sensor) einer busorientierten programmierbaren Elektroinstallation 10 (z.B. KNX-System), wobei das Busgerät G1 mindestens einen Prozessor (z.B. Mikrokontroller) MK1 und einen Speicher SM2 umfasst, wobei der Speicher SM2 (z.B. ein persistenter Flash-Speicher) einen ersten Speicherbereich SP1' für das jeweilige Betriebssystem und einen zweiten Speicherbereich SP2' für die Applikationen (Applikationsprogramme und dazugehörige Parametrierung) umfasst, wobei das Busgerät G1 dazu eingerichtet ist über eine Schnittstelle BK1, eine Update-Applikation UP-A1, die ein neues Betriebssystem als Binärimage enthält, in den zweiten Speicherbereich SP2' zu laden, und wobei nach Starten der Update-Applikation (UP-A1) das Busgerät G1 veranlasst wird, dass bei einem Neustart des Busgerätes G1 automatisch die Update-Applikation UP-A1 das neue Betriebssystem in den ersten Speicherbereich SP1' kopiert. Die Update-Applikation UP-A1 kann über die Busschnittstelle BK1 (Busankoppler) an das Gerät G1 übertragen werden, oder über eine externe Schnittstelle SS1 (z.B. eine USB-Schnittstelle). Über die externe Schnittstelle SS1 kann die Update-Applikation UP-A1 z.B. von einem Konfigurationsgerät (Upload-Tool, z. B. ETS (Engineering-Tool-Software)) auf das Gerät G1 übertragen werden.
-
Durch das Konfigurationsgerät kann die Update-Applikation UP-A1, die ein neues Betriebssystem für das Gerät G1 umfasst, erzeugt werden. Das neue Betriebssystem ist vorzugsweise in binarisierter Form (z.B. als Binärimage oder als Bitplane) in der Update-Applikation UP-A1 eingebettet.
-
2 zeigt einen beispielhaften Busteilnehmer G3 (z.B. Aktor oder Sensor) einer busorientierten programmierbaren Elektroinstallation (z.B. KNX-System). Der Busteilnehmer G3 ist über den Bus B2 (z.B. KNX-Bus) mit der busorientierten programmierbaren Elektroinstallation verbunden. Der beispielhafte Busteilnehmer G3 entspricht einem KNX-Standard-Busteilnehmer mit einem Busankoppler BK2 und einem Busendgerät BEG. Der Busankoppler BK2 besteht aus einem Übertragermodul UM und einem Kontroller MK2. Durch das Übertragermodul UM erfolgt die Ankopplung an die Busleitung B2. Über eine Anwenderschnittstelle AST sind der Busankoppler BK2 und das Busendgerät BEG miteinander verbunden. Über das Busendgerät BEG ist der Typ und der Funktionsumfang des Busteilnehmers G3 definiert. Ein Busendgerät BEG besitzt üblicherweise einen Mikrokontroller MK3 und einen oder mehrere Speicher. In der Darstellung gemäss 2 ist dem Busendgerät BEG ein Speicher SM 3, mit Speicherbereichen SP1'' und SP2'' zugeordnet. Der Speicher SM 3 kann auch im Mikrokontroller MK3 integriert sein, z.B. auf einem gemeinsamen Chip. Auch der Mikrokontroller MK2 des Busankopplers BK2 umfasst üblicherweise einen integrierten Speicher, der zwei definierte bzw. getrennte Speicherbereiche aufweisen kann. Bei den Kontrollern MK2 und MK3 handelt es sich mit Vorteil um handelsübliche Mikrokontroller (mit Mikroprozessor, Speicher, E/A-Peripherie).
-
Das erfindungsgemässe Verfahren zur Durchführung eines Betriebssystem-Updates kann für einen Mikrokontroller MK2 des Busankopplers BK2, als auch für einen Mikrokontroller MK3 des Busendgerätes BEG verwendet werden. Die Update-Applikation, die das neue Betriebssystem für ein Busendgerätes BEG oder für einen Busankoppler BK2 umfasst, kann über den Bus B2 auf das Gerät G3 übertragen werden.
-
3 zeigt eine zweite beispielhafte Anordnung für ein Gebäudeautomatisierungssystem GBS mit mehreren beispielhaften Busteilnehmern G4 - G7 und einer optionalen Leitstelle LS (z.B. eine Gebäude-Management-Station), die über einen Gebäudeinstallationsbus B3 (z.B. KNX-Bus) verbunden sind. In der Darstellung gemäss 3 erfolgt ein Betriebssystemupdate für das Busgerät G7 durch ein Laden der Update-Applikation UP-A2, die das neue Betriebssystem umfasst, über die externe Schnittstelle SS2, z.B. eine USB-Schnittstelle. Über die Kommunikationsverbindung KV, z.B. über ein USB-Übertragungskabel, wird vom Konfigurationsgerät KG (z.B. PC mit ETS) die Applikation, in die das neue Betriebssystem eingebettet ist, durch die Schnittstelle SS2 auf das Gerät G7 geladen. Das Konfigurationsgerät KG mit entsprechender Software kann auch dazu verwendet werden, das neue Betriebssystem in die Update-Applikation UP-A2 einzubetten, z.B. durch ein Binärabbild (Binärimage) des neuen Betriebssystems. Als Update-Applikation UP-A2 kann eine dedizierte Update-Applikation verwendet werden, die die nur dafür erstellt ist, um ein neues Betriebssystem auf ein Busgerät G4 - G7 zu übertragen. Als Update-Applikation UP-A2 kann aber auch eine bereits vorhandene Applikation verwendet werden, in die das neue Betriebssystem zusätzlich eingebettet wird.
-
4 zeigt eine erste beispielhafte Aufbaustruktur für einen Speicher SM4 eines Busgerätes einer busorientierten programmierbaren Elektroinstallation. Der beispielhafte Speicher SM4 (z.B. ein Flash-Speicher) umfasst einen ersten Speicherbereich SP1''' für das jeweilige Betriebssystem (BS) und einen zweiten Speicherbereich SP2''' für die Applikationen (A) des Busgerätes. Mit Vorteil handelt es sich beim Speicher SM4 um einen persistenten Flash-Speicher (z.B. Flash-EEPROM). Mit Vorteil lassen sich die Speicherzellen des Speichers SM4 einzelnen adressieren. Der Speicher SM4 bildet einen Adressraum, in dem sich jede Adresse einzeln und eindeutig adressieren lässt. Dadurch können die Speicherbereiche SP1''' und SP2''' definiert werden.
-
5 zeigt eine zweite beispielhafte Aufbaustruktur für einen Speicher SM5 eines Busgerätes einer busorientierten programmierbaren Elektroinstallation. Der beispielhafte Speicher SM5 (z.B. ein Flash-Speicher) umfasst einen ersten Speicherbereich SP1'''' für das jeweilige Betriebssystem und einen zweiten Speicherbereich SP2''' für die Applikationen des Busgerätes. In der Darstellung gemäss 5 zeigt eine Aufnahme für eine Speicherbelegung, wobei sich im ersten Speicherbereich SP1'''' das alte Betriebssystem BSA befindet, und im zweiten Speicherbereich SP2'''' eine Update-Applikation UP-A3, in die das neue Betriebssystem BSN eingebettet ist, z.B. in Form eines Betriebssystemimages. Beim eingebetteten Betriebssystemimage für das neue Betriebssystem kann es sich z.B. um ein Binärimage handeln.
-
Beim Starten der Update-Applikation UP-A3 wird das entsprechende Busgerät veranlasst, dass bei einem Neustart des Busgerätes automatisch die Update-Applikation UP-A3 das neue Betriebssystem BSN in den ersten Speicherbereich SP1'''' kopiert. Mit Vorteil wird dabei das alte Betriebssystem BSA vom neuen Betriebssystem BSN überschrieben.
-
6 zeigt ein beispielhaftes Ablaufdiagramm für ein Verfahren zur Durchführung eines Betriebssystem-Updates für ein Busgerät einer busorientierten programmierbaren Elektroinstallation, wobei das Busgerät einen Prozessor (z.B. Mikroprozessor) und einen Speicher (z.B. Flash-Speicher) umfasst, wobei der Speicher einen ersten Speicherbereich für das jeweilige Betriebssystem und einen zweiten Speicherbereich für die Applikationen (Applikationsprogramm und entsprechende Proketierdaten) umfasst, das Verfahren umfasst die folgenden Schritte:
- (VS1) Erzeugen einer Update-Applikation, in die ein neues Betriebssystem eingebettet ist (z.B. in Form eines Binärimage;
- (VS2) Laden der Update-Applikation, die das neue Betriebssystem umfasst, in den zweiten Speicherbereich;
- (VS3) Starten der Update-Applikation, wobei die Update-Applikation das Busgerät veranlasst, dass bei einem Neustart des Busgerätes automatisch die Update-Applikation das neue Betriebssystem in den ersten Speicherbereich kopiert.
-
Optional wird beim Kopieren des neuen Betriebssystems in den ersten Speicherbereich das alte Betriebssystem überschrieben.
-
Mit Vorteil parametriert die Update-Applikation das Busgerät so, dass beim Kopieren des neuen Betriebssystems in den ersten Speicherbereich das Busgerät nur den zum Kopieren benötigten Strom verbraucht.
-
Das Verfahren kann mit bei einer busorientierten programmierbaren Elektroinstallation üblicherweise vorhandenen Hardware (Kommunikationsbus, Busgeräte, Konfigurationsgeräte (z.B. ETS) mit entsprechender Software durchgeführt werden.
-
Das erfindungsgemässe Verfahren ist insbesondere für folgendes Szenario vorteilhaft einsetzbar:
- Zur Zeit ist es nicht möglich bei KNX Produkten (z.B. KNX Busteilnehmern) ein Betriebssystemupdate durchzuführen. Der Austausch einer Applikation bei einem KNX Busteilnehmer (Busgerät) ist schon länger bekannt und wird von vielen Herstellern im Feld durchgeführt. Die Kommunikationssoftware, die für den Upload des Updates benötigt wird, ist aber im Betriebssystem enthalten. Somit ist es nicht möglich das Betriebssystem direkt zu überschreiben. Bisher ist keine Lösung für den Endkunden bekannt. Änderungen des Betriebssystems (z.B. ein Betriebssystem-Update) können nur im Labor oder in der Fertigung vorgenommen werden. Dafür muss der Kunde die Geräte ausbauen, einschicken und dann wieder einbauen.
-
Erfindungsgemäss wird der Speicher im Busgerät in zwei Teile aufgeteilt. D.h. der Adressraum des Speichers wird durch eine entsprechende Speicherverwaltung in zwei getrennte Teile aufgeteilt. Der erste Teil ist für das Betriebssystem und der zweite Teil ist für die Applikation.
-
Für ein Betriebssystem-Update wird nun eine Applikation erstellt, die das neue Betriebssystem z.B. als Binärimage enthält. Als erstes wird dem alten Betriebssystem mitgeteilt, dass die Applikation nicht mehr verwendet werden darf. Dann erfolgt der Upload. Der Upload besteht aus einer speziellen Applikation und den u.U. gepackten neuen Betriebssystem als Daten. Diese spezielle Applikation ist vollständig (Runtime Library und Hardware Treiber) und benötigt keine Teile des alten Betriebssystems. Beim Start der Applikation übernimmt die Applikation die volle Kontrolle des Busgerätes und trägt sich so ein, dass sie bei einem Neustart automatisch aufgerufen wird.
-
Es ist auch vorteilhaft, dass die Applikation die Hardware des Busgerätes so parametriert, dass möglichst wenig Strom verbraucht wird um längere Netzausfälle zu überstehen und den Flashvorgang nicht zu unterbrechen. Danach kopiert die Applikation das neue Betriebssystem an die für das Betriebssystem vorgesehene Position im Speicher.
-
Nach dem Upload der Applikation kann die Applikation direkt oder durch einen Neustart des Busgerätes aktiviert werden. Damit bei diesem Kopiervorgang die individuellen Daten des Gerätes nicht verlorengehen, müssen sie in das Image des neuen Betriebssystems gepatcht werden. Bei diesen Daten handelt es sich z.B. um die Seriennummer, das Fertigungsdatum, die Individuelle Adresse und Kalibrierdaten aus der Endprüfung.
-
Dieses Setzen der Gerätedaten kann nach dem Update über ein externes Tool (z.B. Konfigurationsgerät; z.B. ETS), das auch den Upload durchführt, vorgenommen werden. Diese Vorgehensweise hat den Nachteil, dass das Busgerät in einen Zustand geraten kann, in dem diese Daten fehlen, falls der Vorgang durch Netzausfall oder Fehlbedienung unterbrochen wird. Ist das der Fall, ist das Busgerät so nicht mehr verwendbar und muss eingeschickt werden.
-
Vorteilhaft ist es diese Daten vorher zu patchen (d.h. nachzurüsten bzw. updaten). Die kann durch die Applikation im Busgerät oder durch das externe Tool erfolgen. Dabei werden die Daten aus dem alten Betriebssystem ausgelesen und in das neue Betriebssystem gepatcht. Wenn das Update abgeschlossen ist, hat das Gerät alle individuellen Daten bereits und kann direkt wieder verwendet/angesprochen werden.
-
Um das Gerät wieder voll funktionsfähig zu machen, wird nach dem Betriebssystemupdate noch die Applikation geladen. In diesem Updateprozess ist es wichtig, dem Betriebssystem mitzuteilen, dass die Applikation nicht geladen ist. Dies ist wichtig falls das Update nicht vollständig durchgeführt wurde und mit einem Inbetriebnahmetool (z.B. ETS) Parameter geschrieben werden und die Applikation dann wieder gestartet wird. Dies würde u.U. auch zu einem Einschicken des Gerätes führen.
-
Das Betriebssystem-Update kann nicht nur über die primäre Bus-Schnittestelle (KNX-Busanschluss) sondern auch über eine sekundäre Schnittstelle (IP / USB) des Busgerätes erfolgen. Vor dem Upload wird der Typ des Busgerätes (z.B. Aktortyp, Sensortyp) eindeutig identifiziert. Alternativ überprüft die Applikation nach dem Upload die Geräte-Hardware.
-
Ein Aspekt der vorliegenden Erfindung liegt darin, dass eine Applikation erstellt wird, in die ein Betriebssystem (z.B. ein neues Betriebssystem für einen Betriebssystem-Update) eingebettet ist. Die Applikation kann das neue Betriebssystem in Form eines Betriebssystemimages enthalten. Bei der Applikation kann es sich um eine dedizierte Update-Applikation handeln, oder eine bereits vorhandene Applikation, z.B. aus der ETS-Datenbank.
-
Diese Applikation kann nach abgeschlossenem Upload das neue Betriebssystem an die dafür vorgesehene Stelle im Speicher kopieren.
-
Mit Vorteil erfolgt ein automatisches Patchen der individuellen Gerätedaten (z.B. die Seriennummer, das Fertigungsdatum, die individuelle Adresse und Kalibrierdaten aus der Endprüfung) aus dem alten Betriebssystem in das neue Betriebssystemimage.
-
Busgerät einer busorientierten programmierbaren Elektroinstallation, wobei das Busgerät (Busteilnehmer, z.B. Aktor oder Sensor) einen Prozessor (Mikrokontroller) und einen Speicher umfasst, wobei der Speicher einen ersten Speicherbereich für das jeweilige Betriebssystem und einen zweiten Speicherbereich für die Applikationen umfasst, wobei das Busgerät dazu eingerichtet ist über eine Schnittstelle, eine Update-Applikation, die ein neues Betriebssystem als Binärimage enthält, in den zweiten Speicherbereich zu laden, und wobei nach Starten der Update-Applikation das Busgerät veranlasst wird, dass bei einem Neustart des Busgerätes automatisch die Update-Applikation das neue Betriebssystem in den ersten Speicherbereich kopiert.
-
Bezugszeichenliste
-
- G1 - G7
- Busgerät
- B1 - B3
- Bus
- SM1 - SM5
- Speichermedium
- SP1, SP1',SP1'',SP1''', SP1''''
- Erster Speicherbereich
- SP2, SP2', SP2'', SP2''', SP2''''
- Zweiter Speicherbereich
- A
- Applikation
- UP-A1 - UP-A3
- Update-Applikation
- BS
- Betriebssystem
- BSN
- Neues Betriebssystem
- BSA
- Altes Betriebssystem
- 10, GBS
- Gebäudeautomatisierungssystem
- BK1, BK2
- Busankoppler
- SS1,SS2
- Schnittstelle
- AST
- Anwenderschnittstelle
- UM
- Übertragermodul
- BEG
- Busendgerät
- MK1 - MK3
- Prozessor
- LS
- Leitsystem
- KG
- Konfigurationsgerät
- KV
- Kommunikationsverbindung
- VS1 - VS3
- Verfahrensschritt