Hallo Fenix,
wenn ich die S7-Hilfe richtig gelesen habe, kann man den SFC 12 mehrfach aufrufen:
So lange ein oder meherere SFC 12-Aufträge aktiv sind, können Sie keine geänderte Konfiguration vom PG in die CPU laden ...
Grüße
Gebs
Hallo erstmal!
Ich möchte 3 Profibusslaves mit dem SFC12 passivieren oder auch aktivieren.
Kann ich die 3 SFC12 Aufrufe einfach nacheinander programmieren und die laufen parallel ab, oder muss ich einen Aufrufen und dann warten bis sein Busy-Signal eine negative Flanke aufweißt, und ich dann den 2. Aufruf des SFC12 starte (den 3. Aufruf nach Beendigung des 2. SFC12-Aufrufes entsprechend)?
Hallo Fenix,
wenn ich die S7-Hilfe richtig gelesen habe, kann man den SFC 12 mehrfach aufrufen:
So lange ein oder meherere SFC 12-Aufträge aktiv sind, können Sie keine geänderte Konfiguration vom PG in die CPU laden ...
Grüße
Gebs
das kannst du ruhig so machen
hier ein codeausschnit aus einem programm
Code:CALL "D_ACT_DP" // Slave 12 "Maschinen-SFG box 2" REQ :="RCDB SYS".Anlage_ohne_Slave_12 MODE :=B#16#2 LADDR :=W#16#3F4 // 1012 = W#16#3F4 RET_VAL:=#_RET_VAL_SFC12 BUSY :=#_BUSY L #_RET_VAL_SFC12 U #_BUSY SPB SDAe CALL "D_ACT_DP" // Slave 11 "Maschinen-SFG box 1" REQ :="RCDB SYS".Anlage_ohne_Slave_11 MODE :=B#16#2 LADDR :=W#16#3F3 // 1011 = W#16#3F3 RET_VAL:=#_RET_VAL_SFC12 BUSY :=#_BUSY L #_RET_VAL_SFC12 U #_BUSY SPB SDAe CALL "D_ACT_DP" // Slave 6 "Trichter H113 bis H116" REQ :="RCDB SYS".Anlage_ohne_Slave_06 MODE :=B#16#2 LADDR :=W#16#3EE // 1006 = W#16#3EE RET_VAL:=#_RET_VAL_SFC12 BUSY :=#_BUSY L #_RET_VAL_SFC12 U #_BUSY SPB SDAe CALL "D_ACT_DP" // Slave 5 "Trichter H109 bis H112" REQ :="RCDB SYS".Anlage_ohne_Slave_05 MODE :=B#16#2 LADDR :=W#16#3ED // 1005 = W#16#3ED RET_VAL:=#_RET_VAL_SFC12 BUSY :=#_BUSY L #_RET_VAL_SFC12 U #_BUSY SPB SDAe CALL "D_ACT_DP" // Slave 4 "Trichter H105 bis H108" REQ :="RCDB SYS".Anlage_ohne_Slave_04 MODE :=B#16#2 LADDR :=W#16#3EC // 1004 = W#16#3EC RET_VAL:=#_RET_VAL_SFC12 BUSY :=#_BUSY L #_RET_VAL_SFC12 U #_BUSY SPB SDAe SDAe: NOP 0
Beginne jeden Tag mit einem lächeln,es kann dir nämlich während des Tages sehr schnell vergehen.
Aber wenn er den Slave 12 passiviert ist ja Busy auf true und er springt zu SDAe. Im nächsten durchlauf fängt er dann denn nicht wieder bei Slave 12 an und versucht den nochmals zu passivieren und setzt Busy wieder für eine gewisse Zeit auf true? Werden dann Slave 11, 6, 5 und 4 denn überhaupt passiviert? Weil ja Busy dann wieder true ist und er zur Sprungmarke SDAe springt???
BUSY OUTPUT BOOL E, A, M, D, L Aktivkennung:· BUSY=1: Der Auftrag ist noch aktiv.· BUSY=0: Der Auftrag wurde beendet.
Last edited by Gerhard K; 09.01.2009 at 14:27.
Beginne jeden Tag mit einem lächeln,es kann dir nämlich während des Tages sehr schnell vergehen.
ja hast recht.ich schreib heute lauter blödsinn![]()
Beginne jeden Tag mit einem lächeln,es kann dir nämlich während des Tages sehr schnell vergehen.
Bookmarks