Sprung programmieren

Syntaxfehler

Level-1
Beiträge
117
Reaktionspunkte
3
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

ich möchte einen Sprung programmieren, in dem ich von NW2 zum NW1 springe, wenn diese Bedingung nicht erfüllt ist. Ist diese erfüllt, läuft das Programm nach NW3 weiter.

Wenn ich einen Sprung programmiere, stopt die SPS, weil der Marker nicht definiert ist? Wie und was muss ich dafür programmieren?

Vielen Dank schon mal im vorraus.

Gruß
Syny
 
Rückwärtssprünge sind immer problematisch, weil sich (denke das ist bei dir der Fall) die CPU im Problemfall in einer Schleife aufhängt.
 
Da eine SPS ihr Programm linear abarbeitet und dabei auf die max. Zykluszeit achtet, geht das so nicht. (Man kann schon zurückspringen, aber nicht beliebig oft, da dann die Zykluszeit zu lang wird.) Wenn du willst, daß der restliche Code nicht mehr bearbeitet wird, mußt du über diesen Code hinwegspringen oder per Befehl (BEB, Bausteinende bedingt). den Baustein verlassen. Der Code nach diesem Baustein wird dann aber wieder ausgeführt!
 
Hmm.. das wäre eine Lösung Ralle, wenn ich dann sage Bausteinende.

In dem FC sind viele NW programmiert. Nur wenn anfangs die Grundstellung nicht stimmt, möchte ich nicht, das dieser Baustein unnötig durcharbeitet wird bzw. um unnötige viele Verrieglungen zu programmieren, möchte ich diesen einfach vorher abwürgen.
Ich setze alle abgefragten MB schon zurück, wenn die Grundstellung nicht erfüllt ist.

Warum steht eigentlich beim Sprungnamen z.B. Cas1 "undef", wenn ich die Maus drüber fahre. Muss ich diesen irgendwo noch definieren?

Ralle der Befehl "Bausteinende" wäre so?
Z.B.:
U E0.0
BEB
 
wenn du den FC nur bei einer bestimmten Bedingung abarbeiten willst, dann rufe ihn doch nur bedingt auf.

Code:
U E0.0
CC FC1
...
 
Zurück
Oben