Firmware Update: Unterschied zwischen den Versionen

Aus CANopen-Lift
Zur Navigation springen Zur Suche springen
(Anpassung an aktuellen Vorschlag)
 
Zeile 1: Zeile 1:
Dieser Artikel beschreibt ein Verfahren zur Programmierung der Firmware
Dieser Artikel beschreibt ein Verfahren zur Programmierung der Firmware
einer CANopen-Lift (CiA-417) kompatiblen Baugruppe.
einer CANopen-Lift (CiA 417) kompatiblen Baugruppe.


== Minimale Voraussetzungen ==
== Minimale Voraussetzungen ==
Ein CANopen kompatibler Bootloader muss folgende Objekte beinhalten:
Ein CANopen kompatibler Bootloader muss folgende Objekte beinhalten:


- 1000h Device Type mit dem Wert 424F4F54h ("BOOT")
- 1000h Device Type mit dem Wert FE0001A1h (CiA 417, virtual device code ''Bootloader'')


- 1001h Error Register
- 1001h Error Register
Zeile 13: Zeile 14:
- 1F50h Download Program Data (min. Subindex 1)
- 1F50h Download Program Data (min. Subindex 1)


Folgende Objekte sind laut CiA DS-301 optional, sollten aber für eine bessere Funktionalität vorhanden sein:
- 1F51h Program Control
 
- 1F56h Application Software Identification
 
- 1F57h Flash status identification
 
Folgende Objekte sind laut CiA 301 optional, sollten aber für eine bessere Funktionalität vorhanden sein:


- 1008h Device Name
- 1008h Device Name
Zeile 23: Zeile 30:
- 1017h Producer heartbeat time (typ. 500 ms)
- 1017h Producer heartbeat time (typ. 500 ms)


Folgendes Objekt im herstellerspezifischen Bereich wird zusätzlich empfohlen bzw. benötigt:
Folgendes Objekt im Applikations-Bereich wird zusätzlich benötigt:


- 2010h Password (Visible String)
- 6005h Lock/unlock parameters


== Ablauf ==
== Ablauf ==
Das Softwareupdate läuft aus Sicht des Programmiertools nach folgendem Schema ab:
Das Softwareupdate läuft aus Sicht des Programmiertools nach folgendem Schema ab:


# Auslesen der aktuellen Software-/Hardwareversion und Daten in weiterem Zusammenhang.
# Auslesen der aktuellen Software-/Hardwareversion und Daten in weiterem Zusammenhang.
# NMT-Masterfunktionalität übernehmen, wenn bereits ein NMT-Master im System existiert (Flying-Master).
# NMT-Masterfunktionalität übernehmen, wenn bereits ein NMT-Master im System existiert (Flying-Master).
# Wenn Node-ID ungleich 126: Schreiben des vom Anwender eingegebenen Passwortes auf Objekt 2010h.
# Wenn Node-ID ungleich 126: Schreiben des vom Anwender eingegebenen Passwortes auf Objekt 6005h.
# Wenn Node-ID ungleich 126: Ausführen des NMT-Kommandos Reset Application auf dem Gerät.
# Wenn Node-ID ungleich 126: Ausführen des NMT-Kommandos ''Reset Application'' auf dem Gerät.
# Das Gerät ist nun unter der Node-ID 126 ansprechbar und arbeitet im Bootloader-Modus.
# Das Gerät ist nun unter der Node-ID 126 ansprechbar und arbeitet im Bootloader-Modus.
# Schreiben des vom Anwender eingegebenen Passwortes auf Objekt 2010h.
# Schreiben des vom Anwender eingegebenen Passwortes auf Objekt 6005h.
# Auslesen oder Übertragen der Betriebssoftware von/auf Objekt 1F50h (Subindex 1).
# Auslesen oder Übertragen der Betriebssoftware von/auf Objekt 1F50h.
# Ausführen des NMT-Kommandos Reset Application. Das Gerät meldet sich danach wieder mit seiner ursprünglichen Node-ID.
# Ausführen des NMT-Kommandos ''Reset Application''. Das Gerät meldet sich danach wieder mit seiner ursprünglichen Node-ID.


== Hinweise ==


== Hinweise ==
Das Schreiben der Firmware erfolgt auf das Objekt 1F50h, Subindex 1. Das Gerät ist selbst dafür verantwortlich, wie die
Das Schreiben der Firmware erfolgt auf das Objekt 1F50h, Subindex 1. Das Gerät ist selbst dafür verantwortlich, wie die
geschriebene Datei verarbeitet wird. Es gibt keine Vorgaben über den Aufbau und das Format der Datei mit der Firmware.
geschriebene Datei verarbeitet wird. Es gibt keine Vorgaben über den Aufbau und das Format der Datei mit der Firmware.


Um das versehentliche Überschreiben der Firmware zu verhindern, wurde das Objekt 2010h (Password) vorgesehen. Gleichzeitig
Subindex 2 ist für die aktuelle Konfiguration (Parametersatz) vorgesehen. Somit kann das Programmiertool den aktuellen Parametersatz automatisch sichern, bevor eine neue Firmware geschrieben wird.
 
Um das versehentliche Überschreiben der Firmware zu verhindern, wurde das Objekt 6005h (Password) vorgesehen. Gleichzeitig
dient das Objekt zum Starten des Bootloaders in einem laufenden System (siehe Ablauf oben).
dient das Objekt zum Starten des Bootloaders in einem laufenden System (siehe Ablauf oben).



Aktuelle Version vom 2. Juli 2012, 13:51 Uhr

Dieser Artikel beschreibt ein Verfahren zur Programmierung der Firmware einer CANopen-Lift (CiA 417) kompatiblen Baugruppe.

Minimale Voraussetzungen

Ein CANopen kompatibler Bootloader muss folgende Objekte beinhalten:

- 1000h Device Type mit dem Wert FE0001A1h (CiA 417, virtual device code Bootloader)

- 1001h Error Register

- 1018h Identity Object

- 1F50h Download Program Data (min. Subindex 1)

- 1F51h Program Control

- 1F56h Application Software Identification

- 1F57h Flash status identification

Folgende Objekte sind laut CiA 301 optional, sollten aber für eine bessere Funktionalität vorhanden sein:

- 1008h Device Name

- 1009h Hardware Version

- 100Ah Software version

- 1017h Producer heartbeat time (typ. 500 ms)

Folgendes Objekt im Applikations-Bereich wird zusätzlich benötigt:

- 6005h Lock/unlock parameters

Ablauf

Das Softwareupdate läuft aus Sicht des Programmiertools nach folgendem Schema ab:

  1. Auslesen der aktuellen Software-/Hardwareversion und Daten in weiterem Zusammenhang.
  2. NMT-Masterfunktionalität übernehmen, wenn bereits ein NMT-Master im System existiert (Flying-Master).
  3. Wenn Node-ID ungleich 126: Schreiben des vom Anwender eingegebenen Passwortes auf Objekt 6005h.
  4. Wenn Node-ID ungleich 126: Ausführen des NMT-Kommandos Reset Application auf dem Gerät.
  5. Das Gerät ist nun unter der Node-ID 126 ansprechbar und arbeitet im Bootloader-Modus.
  6. Schreiben des vom Anwender eingegebenen Passwortes auf Objekt 6005h.
  7. Auslesen oder Übertragen der Betriebssoftware von/auf Objekt 1F50h.
  8. Ausführen des NMT-Kommandos Reset Application. Das Gerät meldet sich danach wieder mit seiner ursprünglichen Node-ID.

Hinweise

Das Schreiben der Firmware erfolgt auf das Objekt 1F50h, Subindex 1. Das Gerät ist selbst dafür verantwortlich, wie die geschriebene Datei verarbeitet wird. Es gibt keine Vorgaben über den Aufbau und das Format der Datei mit der Firmware.

Subindex 2 ist für die aktuelle Konfiguration (Parametersatz) vorgesehen. Somit kann das Programmiertool den aktuellen Parametersatz automatisch sichern, bevor eine neue Firmware geschrieben wird.

Um das versehentliche Überschreiben der Firmware zu verhindern, wurde das Objekt 6005h (Password) vorgesehen. Gleichzeitig dient das Objekt zum Starten des Bootloaders in einem laufenden System (siehe Ablauf oben).

Die vorgegebene Knotennummer für das Softwareupdate ist 126.