- Beiträge
- 25.798
- Reaktionspunkte
- 9.563
-> Hier kostenlos registrieren
Hallo zusammen,
ich möchte an einer CPU 318-2AJ00-0AB0 den Batteriestatus auslesen. Allerdings nicht über den OB81 PS Fault sondern mittels SFC51
Siemens liefert hierfür folgendes Beispiel:
Ich habe alles soweit eingefügt und teilweise funktioniert es: RUN LED wird korrekt angezeigt und dass sie leuchtet. Wenn ich auf Stopp stelle wird
auch dies richtig angezeigt. Bei den Werten für Batteriefehler steht allerdings immer 0 drin, obwohl sie permanent leuchtet ( keine Batterie drin ).
Ich habe anders als in dem Siemens Beispiel nicht Merker verwendet sondern mit einen DB mit 20 Byte angelegt, so dass es zu keinen Überschreidungen
kommen kann.
Kennt jemand dieses Problem und kann mir weiterhelfen
Ich bin für jede Hilfe dankbar.
ich möchte an einer CPU 318-2AJ00-0AB0 den Batteriestatus auslesen. Allerdings nicht über den OB81 PS Fault sondern mittels SFC51
Siemens liefert hierfür folgendes Beispiel:
CALL "RDSYSST" // SFC 51 : lesen des Systemstatus
REQ :=TRUE // Anstoss der Bausteinbearbeitung
SZL_ID :=W#16#19 // Kommando an SFC51 : 0019 auslesen aller LED's
INDEX :=W#16#0 // Zum Auslesen des Batteriefehlers ist der Index irrelevan
RET_VAL :=MW2 // Fehlercode
BUSY :=M1.0 // 1 Baustein im Prozess : 0 Fertig - 1 in Process : 0 ready
SZL_HEADER:=#szl_header // Angabe über Datensatzlänge und
DR :=P#M 20.0 BYTE 20
L MW 20 // DS1 : Kennung LED : Sammelfehler 0001 h
L MB 22 // DS1 : An 1 / Aus 0
L MB 23 // DS1 : Blinken der LED : ja/nein
L MW 24 // DS2 : Kennung LED : Run 0004 h
L MB 26 // DS2 : An 1 / Aus 0
L MB 27 // DS2 : Blinken der LED : ja/nein
L MW 28 // DS3 : Kennung LED : Stop 0005 h
L MB 30 // DS3 : An 1 / Aus 0
L MB 31 // DS3 : Blinken der LED : ja/nein
L MW 32 // DS4 : Kennung LED : Force 0006 h
L MB 34 // DS4 : An 1 / Aus 0
L MB 35 // DS4 : Blinken der LED : ja/nein
L MW 36 // DS5 : Kennung LED : Batteriefehler 0008 h
L MB 38 // DS5 : An 1 / Aus 0
L MB 39 // DS5 : Blinken der LED : ja/nein
BE
Ich habe alles soweit eingefügt und teilweise funktioniert es: RUN LED wird korrekt angezeigt und dass sie leuchtet. Wenn ich auf Stopp stelle wird
auch dies richtig angezeigt. Bei den Werten für Batteriefehler steht allerdings immer 0 drin, obwohl sie permanent leuchtet ( keine Batterie drin ).
Ich habe anders als in dem Siemens Beispiel nicht Merker verwendet sondern mit einen DB mit 20 Byte angelegt, so dass es zu keinen Überschreidungen
kommen kann.
Kennt jemand dieses Problem und kann mir weiterhelfen
Ich bin für jede Hilfe dankbar.