Schrittkette mit Sprung (Abzweig)

Zuviel Werbung?
-> Hier kostenlos registrieren
Ich habe das Problem jetzt so gelöst:

NW1:
L MB 50 // Nummer des Sprungziels
SPL ende // Sprungziel, wenn > letzter
SPA s0 // Sprungziel, wenn = 0
SPA s1 // Sprungziel, wenn = 1
SPA s2 // Sprungziel, wenn = 2
SPA s3 // Sprungziel, wenn = 3
SPA s4 // Sprungziel, wenn = 4
SPA s5 // Sprungziel, wenn = 5
ende: SET
L 0
T MB 50
BEA


NW2:
s0: U E 0.0 //Starttaster
U E 1.7 //Endschalter Grundstellung

SPB next
BEA

NW3:
s1: SET //Aktionen
= #SR_0

U E 1.0 //Transitionen zum nächsten Schritt
U E 1.1
SPB next //Sprung zum Bausteinende, und Schrittnummer um 1 erhöhen
BEA


NW4:
s2: SET //Aktionen
= #SR_1
CLR
= #SR_0

U E 1.1 //Transitionen zum nächsten Schritt
U E 1.2
SPB next //Sprung zum Bausteinende, und Schrittnummer um 1 erhöhen
BEA


....aber ich finde diese Lösung etwas umständlich, da ich in jedem Schritt den vorhergehenden Ausgang rücksetzen muss.
Gibt es keine Möglichkeit den Ausgang nur solange zu setzen, bis der nächste Schritt aktiviert ist?

Wenn ich das SET weg lasse, wird der Ausgang nicht gesetzt. :shock:

Na ja, SPL und SPA beeinflussen das VKE nicht, insofern ist ein

= A1.4

wohl abhängig vom VKE vor der SPL, ein SET also sogar notwendig? Man kann das Set auch vor der SPL schreiben, das sollte reichen.

Ich hab das Set immer nach der Sprungmarke stehen (M000: SET), daher ist mir das noch nie so aufgefallen, werde es mal testen.

So wie deine SK geschrieben ist, wo würden denn die Ausgänge zurückgesetzt werden? Wenn der nächste Schritt aktiv wird, wird ja

= A1.4

nicht mehr angesprungen, also auch nicht bearbeitet, dein Ausgang 1.4 würde auf 1 bleiben.

Ich nutze ein DBD aus meinem Stations-DB. Das setze ich vor der SPL immer auf Null,

L 0
T DB143.DBD120

Die einzelnen Bits setze ich in den entsprechenden Schritten, hinter der SPS (dann natürlich kein BEA in den Schritten verwenden, sondern SPA ENDE, mit Marke ENDE am Schluß der SK) kommt:

U DB143.DBX120.0
= A 1.4

So ist der Ausgang bei allen Schritten aktiv, in denen steht

S DB143.DBX120.0
 
Zuletzt bearbeitet:
@Ralle:
Ich habe mir das mit den Schritten so gedacht:

NW2:
s0: = #SR_0

//Transitionen zu s1


NW3:
s1: = #SR_1

//Transitionen zu s2

die Ausgänge sind nur solange gesetzt, bis der nächste Schritt kommt.
So wie ich es jetzt mit SET und CLR realisiert habe muss ich immer, wie bei der Merkerbasierenden Schrittkette den vorhergehenden Schrittmerker rücksetzen.
Wenn ich eine Schrittkette erweitere, wäre das etwas Zeitaufwändig. :eek:

Allerdings kenne ich mich mit AWL nicht gut aus, deswegen meine Frage ob es eine Möglichkeit gibt die Ausgänge solange zu setzen bis der nächste Schritt aktiv ist (= A 4.1 funktioniert nicht).

Könntest du evtl. ein S7-Projekt mit einer SPL-Schrittkette in den Download stellen?
Dann könnte ich mir die Funktionsweise mit Reset, Startbit, Schrittkettenbit usw. anschauen. :s17:
 
Zuviel Werbung?
-> Hier kostenlos registrieren
@Ralle:
Ich habe mir das mit den Schritten so gedacht:

NW2:
s0: = #SR_0

//Transitionen zu s1


NW3:
s1: = #SR_1

//Transitionen zu s2

die Ausgänge sind nur solange gesetzt, bis der nächste Schritt kommt.
So wie ich es jetzt mit SET und CLR realisiert habe muss ich immer, wie bei der Merkerbasierenden Schrittkette den vorhergehenden Schrittmerker rücksetzen.
Wenn ich eine Schrittkette erweitere, wäre das etwas Zeitaufwändig. :eek:

Allerdings kenne ich mich mit AWL nicht gut aus, deswegen meine Frage ob es eine Möglichkeit gibt die Ausgänge solange zu setzen bis der nächste Schritt aktiv ist (= A 4.1 funktioniert nicht).

Könntest du evtl. ein S7-Projekt mit einer SPL-Schrittkette in den Download stellen?
Dann könnte ich mir die Funktionsweise mit Reset, Startbit, Schrittkettenbit usw. anschauen. :s17:


Das hab ich doch oben geschrieben:
http://www.sps-forum.de/showpost.php?p=84674&postcount=21

vor der SPL

L 0
T MD10 (z.Bsp.)

in den Schritten

in Schritt 1
S M10.0


...

nach den Schritten

U M 10.0
= A1.4



Allerdings, da wo im Moment BEA steht schreibst du SPA ENDE

und nach allen Schritten steht zuerst

ENDE: NOP 0

Dann kannst du ab hier deine Ausgänge ala

U M10.0
= A 1.4

bringen.

Meine Schrittkettenbausteine bringen dir da nicht soviel, die sind wesentlich umfangreicher und ich habe für die Schrittweiterschaltung einen eigenen Baustein, der noch so einiges mehr macht. Eh du dich da reingearbeitest hättest...
 
Zurück
Oben