204 lines
6.8 KiB
Plaintext
204 lines
6.8 KiB
Plaintext
=== FB 92: MZylinder [STL] ===
|
|
INTERFACE:
|
|
Input:
|
|
Automatik : Bool // Automatikbetrieb ist aktiv
|
|
Handbetrieb : Bool // Handbetrieb ist aktiv
|
|
T_Ast : Int := 5 // Zeit bis AST erreicht ist (*100ms)
|
|
T_Gst : Int := 5 // Zeit bis GST erreicht ist (*100ms)
|
|
Output:
|
|
ZylAst : Bool // Vorwärts-Ausgang des Antriebs
|
|
ZylGst : Bool // Rückwärts-Ausgang des Antriebs
|
|
InOut:
|
|
Static:
|
|
Stat : "UZylinder"
|
|
Temp:
|
|
Constant:
|
|
|
|
--- NW 1: Zeitwert löschen ---
|
|
A ZylAst // Zylinder fährt nach AST
|
|
A(
|
|
O Stat.B_AST // Hat Endstellung erreicht
|
|
ON Stat.Old_Ast // Fuhr letzten Zyklus anders
|
|
)
|
|
O
|
|
AN ZylAst // Zylinder fährt nach GST
|
|
A(
|
|
O Stat.B_GST // Hat Endstellung erreicht
|
|
O Stat.Old_Ast // Fuhr letzten Zyklus anders
|
|
)
|
|
JCN Nw02
|
|
|
|
tdel: L 0 // Zeitwert löschen
|
|
T Stat.T_Zelle
|
|
|
|
A ZylAst // Zylinder fährt nach AST
|
|
= Stat.Old_Ast // Fuhr letzten Zyklus nach AST
|
|
|
|
JU Nw05
|
|
|
|
--- NW 2: AST-Erreichtzeit abgelaufen ? ---
|
|
Nw02: L Stat.T_AST_Akt // Gewollter Zeitwert
|
|
L 9999 // angegeben ?
|
|
<>I // Ja !
|
|
JC w020
|
|
|
|
L T_Ast // Sollwert übergeben
|
|
T Stat.T_AST_Akt // Gewollter Zeitwert
|
|
|
|
w020: A ZylAst // Zylinder fährt nach AST ?
|
|
JCN en02
|
|
|
|
SET
|
|
R Stat.B_GST
|
|
|
|
L Stat.T_Zelle // Aktueller Zeitwert
|
|
L Stat.T_AST_Akt // Gewollter Zeitwert erreicht ?
|
|
>=I
|
|
S Stat.B_AST // Zylinder hat AST erreicht
|
|
JC tdel // Zeit nullen
|
|
|
|
JU Nw03
|
|
|
|
en02: AN Stat.Typ5_3 // Zylinder hält seine Stellung !
|
|
R Stat.B_AST
|
|
|
|
|
|
--- NW 3: GST-Erreichtzeit abgelaufen ? ---
|
|
Nw03: L Stat.T_GST_Akt // Gewollter Zeitwert
|
|
L 9999 // angegeben ?
|
|
<>I // Ja !
|
|
JC w030
|
|
|
|
L T_Gst // Sollwert übergeben
|
|
T Stat.T_GST_Akt // Gewollter Zeitwert
|
|
|
|
w030: A( // Zylinder fährt nach GST ?
|
|
O Stat.Typ5_2 // Zylinder mit 2-facher Ansteuerung
|
|
O Stat.Typ5_3
|
|
)
|
|
A ZylGst
|
|
O
|
|
A Stat.Typ3_2 // Zylinder mit 1-facher Ansteuerung
|
|
AN ZylAst
|
|
JCN en03
|
|
|
|
SET
|
|
R Stat.B_AST
|
|
|
|
L Stat.T_Zelle // Aktueller Zeitwert
|
|
L Stat.T_GST_Akt // Gewollter Zeitwert erreicht ?
|
|
>=I
|
|
S Stat.B_GST // Zylinder hat GST erreicht
|
|
JC tdel // Zeit nullen
|
|
|
|
JU Nw04
|
|
|
|
en03: AN Stat.Typ5_3 // Zylinder hält seine Stellung !
|
|
R Stat.B_GST
|
|
|
|
|
|
--- NW 4: Zeit läuft ---
|
|
Nw04: A( // Zylinder fährt nach GST ?
|
|
O Stat.Typ5_2 // Zylinder mit 2-facher Ansteuerung
|
|
O Stat.Typ5_3
|
|
)
|
|
AN ZylGst // Zylinder wird nicht angesteuert
|
|
AN ZylAst
|
|
ON "100ms-Impuls" // nur als Impuls
|
|
JC Nw05
|
|
|
|
L Stat.T_Zelle
|
|
L "MW2" // 100ms-Takte
|
|
+I
|
|
T Stat.T_Zelle
|
|
|
|
|
|
--- NW 5: Undefinierte Zustände / Befehle ---
|
|
Nw05: A Automatik // Automatik + Hand aktiv
|
|
A Handbetrieb
|
|
O
|
|
AN Automatik // keine Betriebsart
|
|
AN Handbetrieb
|
|
O
|
|
A Stat.Ast // Arbeitsstellung- + Grundstellungfahren aktiv
|
|
A Stat.Gst
|
|
O
|
|
AN Stat.Typ3_2 // Undefinierter Ventil-Typ
|
|
AN Stat.Typ5_2
|
|
AN Stat.Typ5_3
|
|
O
|
|
A Stat.Typ3_2
|
|
A(
|
|
O Stat.Typ5_2
|
|
O Stat.Typ5_3
|
|
)
|
|
O
|
|
A Stat.Typ5_2
|
|
A Stat.Typ5_3
|
|
JCN en06 // Zylinderstellung bleibt eingefroren
|
|
|
|
A Stat.Typ5_3 // Zylinder hält seine Stellung !
|
|
R Stat.Ast // Bewegungsbits löschen
|
|
R Stat.Gst
|
|
|
|
BEU
|
|
|
|
en06: NOP 0
|
|
|
|
--- NW 6: Zylinder auf Arbeitstellung fahren ---
|
|
A Stat.Ast
|
|
= ZylAst
|
|
|
|
|
|
--- NW 7: Zylinder auf Grundstellung fahren ---
|
|
A(
|
|
O Stat.Typ5_2
|
|
O Stat.Typ5_3
|
|
)
|
|
A Stat.Gst
|
|
= ZylGst
|
|
|
|
|
|
--- NW 8: Daten, die zurückgesetzt werden ---
|
|
A Stat.Typ5_3 // Zylinder hält seine Stellung !
|
|
R Stat.Ast // Bewegungsbits löschen
|
|
R Stat.Gst
|
|
A Stat.Typ3_2
|
|
R Stat.Gst // Es gibt kein GST fahren !
|
|
|
|
|
|
--- NW 9: Ausgänge übergeben an OP übergeben ---
|
|
A ZylGst
|
|
= Stat.OP_Out_GST
|
|
|
|
A ZylAst
|
|
= Stat.OP_Out_AST
|
|
|
|
|
|
--- NW 10: Statistik ---
|
|
A ZylAst
|
|
Rise Stat.FP_AST
|
|
JCN AST2
|
|
|
|
L Stat.Statistik.AST_Schaltungen
|
|
L DINT#1
|
|
+D
|
|
T Stat.Statistik.AST_Schaltungen
|
|
|
|
AST2: A ZylGst
|
|
A Stat.Typ5_3
|
|
Rise Stat.FP_AST2
|
|
JCN StatEnde
|
|
|
|
L Stat.Statistik.AST2_Schaltungen
|
|
L DINT#1
|
|
+D
|
|
T Stat.Statistik.AST2_Schaltungen
|
|
|
|
StatEnde: NOP 0
|
|
|
|
|
|
--- NW 11: Ende ---
|
|
BE
|
|
|