Schrittkette zurück setzen mit SET ... kein verständniss wann SET ausfgefürt wird

Padi0-000

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

Bin sehr neu was das programmieren über AWL betrifft.
habe bis jetzt immer nur FUP bei logo Modulen programmiert.

Hoffe es kann mir jemand helfen das unten aufgelistete Netzwerk zu entschlüssenl was in welchem Schritt passiert, da ich die Zeiten nicht verstehe und den letzten Teil wo die Schrittkette mit SET zurückgesetzt wird.

Wodurch wird Set ausgelöst und wozu gibt es die 10 Sec verzögerung beim Qittieren

Das Programm ein mal mit opperanten und mit Symbolen
Hoffe es kann mir jemand helfen ..

Gruß Patrick



//---Quittiertaster auswertung Flanke
U "E-Quittieren"
O "DB VISU Einschaltungen".Gesamteinschaltung.Quittieren
L S5T#1S
SV "T-Störung-CLR"

//-Visu Quittierung DELL
U "DB VISU Einschaltungen".Gesamteinschaltung.Quittieren
R "DB VISU Einschaltungen".Gesamteinschaltung.Quittieren

//---Sammelstörungen Quittieren
U "T-Störung-CLR"
= "DB System".System.Stoerung_quittieren

U "E-Quittieren"
L S5T#10S
SE "T-Störungen-CLR"

U "Steuerspg. quittieren"
UN "Steuerspg. Anlage bereit"
U "DB System".System.Nullmerker
O(
U "T-Störungen-CLR"
FP "M-Flanke-Quittieren"
)
SPBN Fill

L 0
T #SFC21_BVAL

CALL "FILL"
BVAL :=#SFC21_BVAL
RET_VAL:=#SFC21_RET_VAL
BLK :=P#DB210.DBX0.0 BYTE 112

//-Schrittketten DELL
SET
R "DB 998 - VISU".SB998D01_01.Animation.LS_Ende
R "DB 998 - VISU".SB998D01_02.Animation.LS_Ende
R "DB 998 - VISU".SB998D01_03.Animation.LS_Ende
R "DB 998 - VISU".SB998D01_04.Animation.LS_Ende
R "DB 998 - VISU".SB998D01_05.Animation.LS_Ende
R "DB 998 - VISU".SB998D02_01.Animation.LS_Ende
R "DB 998 - VISU".SB998D02_02.Animation.LS_Ende
R "DB 998 - VISU".SB998D02_03.Animation.LS_Ende
R "DB 998 - VISU".SB998D02_04.Animation.LS_Ende
R "DB 998 - VISU".SB998D02_05.Animation.LS_Ende
R "DB 998 - VISU".SB998D02_06.Animation.LS_Ende

R "DB 998 - VISU".SB998D01_03.Allgemein.Uebernahme
R "DB 998 - VISU".SB998D01_04.Allgemein.Uebernahme
R "DB 998 - VISU".SB998D01_05.Allgemein.Uebernahme
R "DB 998 - VISU".SB998D02_01.Allgemein.Uebernahme
R "DB 998 - VISU".SB998D02_02.Allgemein.Uebernahme
R "DB 998 - VISU".SB998D02_03.Allgemein.Uebernahme
R "DB 998 - VISU".SB998D02_04.Allgemein.Uebernahme

R "DB 998 - VISU".SB998D01_03.Animation.Band_belegt


R "DB 999 - VISU".SB999D01_01.Animation.LS_Ende
R "DB 999 - VISU".SB999D01_02.Animation.LS_Ende
R "DB 999 - VISU".SB999D01_03.Animation.LS_Ende
R "DB 999 - VISU".SB999D01_04.Animation.LS_Ende
R "DB 999 - VISU".SB999D01_05.Animation.LS_Ende
R "DB 999 - VISU".SB999D02_01.Animation.LS_Ende
R "DB 999 - VISU".SB999D02_02.Animation.LS_Ende
R "DB 999 - VISU".SB999D02_03.Animation.LS_Ende
R "DB 999 - VISU".SB999D02_04.Animation.LS_Ende
R "DB 999 - VISU".SB999D02_05.Animation.LS_Ende
R "DB 999 - VISU".SB999D02_06.Animation.LS_Ende

R "DB 999 - VISU".SB999D01_03.Allgemein.Uebernahme
R "DB 999 - VISU".SB999D01_04.Allgemein.Uebernahme
R "DB 999 - VISU".SB999D01_05.Allgemein.Uebernahme
R "DB 999 - VISU".SB999D02_01.Allgemein.Uebernahme
R "DB 999 - VISU".SB999D02_02.Allgemein.Uebernahme
R "DB 999 - VISU".SB999D02_03.Allgemein.Uebernahme
R "DB 999 - VISU".SB999D02_04.Allgemein.Uebernahme

R "DB 999 - VISU".SB999D01_03.Animation.Band_belegt


//---Quittiertaster auswertung Flanke
U E 4.1
O DB230.DBX 18.7
L S5T#1S
SV T 8

//-Visu Quittierung DELL
U DB230.DBX 18.7
R DB230.DBX 18.7

//---Sammelstörungen Quittieren
U T 8
= DB1.DBX 14.0

U E 4.1
L S5T#10S
SE T 9

U T 0
UN T 1
U DB1.DBX 10.0
O(
U T 9
FP M 1.4
)
SPBN Fill

L 0
T #SFC21_BVAL

CALL SFC 21
BVAL :=#SFC21_BVAL
RET_VAL:=#SFC21_RET_VAL
BLK :=P#DB210.DBX0.0 BYTE 112

//-Schrittketten DELL
SET
R DB2011.DBX 59.0
R DB2011.DBX 83.0
R DB2011.DBX 107.0
R DB2011.DBX 131.0
R DB2011.DBX 155.0
R DB2011.DBX 179.0
R DB2011.DBX 203.0
R DB2011.DBX 227.0
R DB2011.DBX 251.0
R DB2011.DBX 275.0
R DB2011.DBX 299.0

R DB2011.DBX 108.0
R DB2011.DBX 132.0
R DB2011.DBX 156.0
R DB2011.DBX 180.0
R DB2011.DBX 204.0
R DB2011.DBX 228.0
R DB2011.DBX 252.0

R DB2011.DBX 107.2


R DB2021.DBX 59.0
R DB2021.DBX 83.0
R DB2021.DBX 107.0
R DB2021.DBX 131.0
R DB2021.DBX 155.0
R DB2021.DBX 179.0
R DB2021.DBX 203.0
R DB2021.DBX 227.0
R DB2021.DBX 251.0
R DB2021.DBX 275.0
R DB2021.DBX 299.0

R DB2021.DBX 108.0
R DB2021.DBX 132.0
R DB2021.DBX 156.0
R DB2021.DBX 180.0
R DB2021.DBX 204.0
R DB2021.DBX 228.0
R DB2021.DBX 252.0

R DB2021.DBX 107.2

Fill: NOP 0
 
Zuletzt bearbeitet:
;) ... da ich die Zeiten nicht verstehe und den letzten Teil wo die Schrittkette mit SET zurückgesetzt wird.

Wodurch wird Set ausgelöst und wozu gibt es die 10 Sec verzögerung beim Qittieren
SET wird nicht ausgelöst, sondern weist die CPU jedesmal an, das "VKE" (VerknüpfungsErgebnis) zu setzen, wenn dieser Befehl durchlaufen wird.
Die folgenden RücksetzBefehle, die nur "bedingt" rücksetzen (also nur, wenn dass VKE true ist), werden folglich auch jedesmal ausgeführt, wenn sie durchlaufen werden.
In dem ProgrammSchnippsel kommen 4 verschiedene Timer vor (T0, T1, T8 und T9) vor.
Wo, wann, wie sie warum T0 und T1 gestartet werden, ist nicht ersichtlich.
T8 wird als "ImpulsVerlängerung" gestartet, d.h. er läuft nach dem Starten mindestens 1 s, auch wenn das Signal, das ihn gestartet hat, längst wieder 0 ist.
T9 wird als EinschaltVerzögerung gestartet, d.h. das Signal, das ihn startet, muss mindesten 10 s lang anstehen, erst danach wird der Ausgang des Timers true und wird erst dann wieder 0, wenn das Signal, das ihn gestartet hat, auch wieder zu 0 wird.
Die Gedanken, die zur Verwendung der Timer geführt haben, kann ich nicht ergründen. Darüber wirst Du, der die Bedienoberfläche bzw. das "Umfeld" anscheinend kennt, erfolgreicher spekulieren können. ;)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo danke erst mal für die schnelle Antwort.

Wann wird denn der Befehl SET durchlaufen ?

laut Aussage soll es so gewesen sein, daß nach 10 Sec drücken von der Quittierung Störung die Schrittkette zurück gesetzt wird, aber das sehe ich nicht , bzw. verstehe ich nicht wie ...

Das das VKE der Datenbausteine Rücksetzen der Schrittkette bedeutet, habe ich schon erfolgreich getestet.
 
T0 und T1 Sind zeiten der Steuerspannung bedeutet dann so viel , daß entweder das Qittieren der Steuerspannung mit T0 und nooch nicht verzogert Anlage EIn T1 oder die Steigende Flanke von T9 die Störungen Qittieren

Nur verstehe ich halt nicht wann der Befehl SET Durch läuft ... ? bei jedem Zyklus oder wenn

SPBN Fill

L 0
T #SFC21_BVAL

CALL SFC 21
BVAL :=#SFC21_BVAL
RET_VAL:=#SFC21_RET_VAL
BLK :=P#DB210.DBX0.0 BYTE 112


Durch gelaufen ist.
 
laut Aussage soll es so gewesen sein, daß nach 10 Sec drücken von der Quittierung Störung die Schrittkette zurück gesetzt wird, aber das sehe ich nicht , bzw. verstehe ich nicht wie ...
Die Befehle nach ...
Code:
...
O(
U "T-Störungen-CLR"
FP "M-Flanke-Quittieren"
)
SPBN Fill
... werden nur durchlaufen, wenn die positive Flanke des "T-Störungen-CLR" auftritt oder die Bedingung ...
Code:
U T 0
UN T 1
U DB1.DBX 10.0
... erfüllt ist. Ansonsten wird der Rest, bis zur Marke "Fill:" übersprungen.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Super Danke .

Also bedeutet es in meinem fall ..
wenn die steuerspannung Quittiert wird

U T 0
UN T 1
U DB1.DBX 10.0

oder Störung Quittiert

O(
U "T-Störungen-CLR"
FP "M-Flanke-Quittieren"
)

Wird das Netzwerk normal weiter bearbeitet mit

L 0
T #SFC21_BVAL

CALL SFC 21
BVAL :=#SFC21_BVAL
RET_VAL:=#SFC21_RET_VAL
BLK :=P#DB210.DBX0.0 BYTE 112
USW.

Passiert nichts davon wird mit dem Befehl
SPBN Fill
gesprungen
in meinem Fall ende des Netzwerkes.


Verstehe ich das richtig ? daß die AWL von oben nach unten abgearbeitet wird ?

und der befel wie SET in meinem fall dann nicht mehr, da durch.
SPBN Springe, wenn VKE = 0 ........................................................................
Zum Netzwerk ende gesprungen wird




Danke Schön für die Hilfe , gibt es hier die möglichkeit dir zu danken wie in anderen Foren ?
 
Zuletzt bearbeitet:
Verstehe ich das richtig ? daß die AWL von oben nach unten abgearbeitet wird ?
Genau!
Ausnahme: wenn ein Sprungbefehl zu einer Marke springt, die "weiter oben" steht, als der Sprungbefehl.
Vorsicht mit solchen Konstrukten: das Programm läuft dann in einer "Schleife". Wenn im Programm nicht für einen Sprung aus der Schleife gesorgt wird, wird sie zu einer "EndlosSchleife", die die CPU zu lange (im ExtremFall "endlos") mit ihrer Abarbeitung beschäftigt und das ist insbesondere für ein "zyklisches" Programm nicht zulässig.
 
Zurück
Oben