-> Hier kostenlos registrieren
Hallo Zusammen,
ich habe eine Frage bzgl. des JMP-Befehls im Safety-Programm (S7 1500 / TIA V17).
Da ich leider keine Bilder hochladen kann/darf, werde ich meine Problemstellung kurz erläutern.
Ich habe zwei aufeinanderfolgende Netzwerke, welche jeweils einen Jump-Befehl enthalten. Je nach Wertstatus soll natürlich in ein anderes Netzwerk gesprungen werden (kein Rücksprung erforderlich). Die Reihenfolge ich habe unterhalb dargestellt:
Netzwerk 1: Wenn Wertstatus = 0 JMP in Netzwerk 3
Netzwerk 2: Wenn Wertstatus = 1 JMP in Netzwerk 4
Netzwerk 3: Führe Aktion X aus
Netzwerk 4: Führe Aktion Y aus
Nun lautet meine Frage: Wenn der Wertstatus = 0 wird, springe ich folglich in Netzwerk 3 und die Aktion X wird ausgeführt. Wird nach der Abarbeitung des Netzwerkes 3 auch das Netzwerk 4 bearbeitet und somit Aktion Y ausgeführt?
Wie ich drauf komme, dass es nicht funktionieren könnte? Weil sich in Netzwerk 4 die Flag von Netzwerk 2 befindet. Ich weiß leider nicht, ob quasi in das Netzwerk gesprungen werden MUSS oder ob das Netzwerk auch im normalen Programmablauf weiterhin bearbeitet wird.
Aus dem Bauch heraus würde ich sagen "klar, Aktion Y wird immer ausgeführt", aber Bauchgefühl hat gerade im Sicherheitsteil wenig zu suchen.
Das 2. JMP ist dafür da, damit Aktion X (Netzwerk 3) im Fall, dass der Wertstatus = 1 ist, nicht ausgeführt wird.
Gerne würde ich ohne JMP arbeiten, aber finde derzeit keine alternative Option für meine Programmierung, da ich einen MOVE-Baustein nicht immer ausführen möchte sondern nur wenn der Wertstatus = 0 wird und der EN Eingang des Bausteins im Sicherheitsteil nicht verwendet werden darf/kann.
Für Antworten und Hinweise wäre ich euch sehr dankbar!
Vielen Dank im Voraus
ich habe eine Frage bzgl. des JMP-Befehls im Safety-Programm (S7 1500 / TIA V17).
Da ich leider keine Bilder hochladen kann/darf, werde ich meine Problemstellung kurz erläutern.
Ich habe zwei aufeinanderfolgende Netzwerke, welche jeweils einen Jump-Befehl enthalten. Je nach Wertstatus soll natürlich in ein anderes Netzwerk gesprungen werden (kein Rücksprung erforderlich). Die Reihenfolge ich habe unterhalb dargestellt:
Netzwerk 1: Wenn Wertstatus = 0 JMP in Netzwerk 3
Netzwerk 2: Wenn Wertstatus = 1 JMP in Netzwerk 4
Netzwerk 3: Führe Aktion X aus
Netzwerk 4: Führe Aktion Y aus
Nun lautet meine Frage: Wenn der Wertstatus = 0 wird, springe ich folglich in Netzwerk 3 und die Aktion X wird ausgeführt. Wird nach der Abarbeitung des Netzwerkes 3 auch das Netzwerk 4 bearbeitet und somit Aktion Y ausgeführt?
Wie ich drauf komme, dass es nicht funktionieren könnte? Weil sich in Netzwerk 4 die Flag von Netzwerk 2 befindet. Ich weiß leider nicht, ob quasi in das Netzwerk gesprungen werden MUSS oder ob das Netzwerk auch im normalen Programmablauf weiterhin bearbeitet wird.
Aus dem Bauch heraus würde ich sagen "klar, Aktion Y wird immer ausgeführt", aber Bauchgefühl hat gerade im Sicherheitsteil wenig zu suchen.
Das 2. JMP ist dafür da, damit Aktion X (Netzwerk 3) im Fall, dass der Wertstatus = 1 ist, nicht ausgeführt wird.
Gerne würde ich ohne JMP arbeiten, aber finde derzeit keine alternative Option für meine Programmierung, da ich einen MOVE-Baustein nicht immer ausführen möchte sondern nur wenn der Wertstatus = 0 wird und der EN Eingang des Bausteins im Sicherheitsteil nicht verwendet werden darf/kann.
Für Antworten und Hinweise wäre ich euch sehr dankbar!
Vielen Dank im Voraus