Files

253 lines
17 KiB
Plaintext

FUNCTION_BLOCK "VPtoEP_OmniFahren"
{ S7_Optimized_Access := 'FALSE' }
// Mechanische AWL->SCL-Konvertierung (awl2scl.py). Kontrollfluss per GOTO,
// wo im Original mit Sprungmarken gearbeitet wurde. Vor Uebernahme in TIA
// Portal pruefen/kompilieren (siehe SCL-Export/README.md).
VAR_INPUT
g_7_HMI_Err_UH07_OB : Word; // war "7_HMI_Err_UH07_OB"
BG4453 : Word; // war "BG4453"
BG4530 : Word; // war "BG4530"
MA0332 : Bool; // war "MA0332"
END_VAR
VAR_IN_OUT
BG3246 : Word; // war "BG3246"
BG3247 : Word; // war "BG3247"
BG3251 : Word; // war "BG3251"
BG3274 : Word; // war "BG3274"
BG3275 : Word; // war "BG3275"
BG3361 : Word; // war "BG3361"
BG3362 : Word; // war "BG3362"
BG3363 : Word; // war "BG3363"
BG3364 : Word; // war "BG3364"
BG3366 : Word; // war "BG3366"
BG4440 : Word; // war "BG4440"
BG4441 : Word; // war "BG4441"
BG4442 : Word; // war "BG4442"
BG4443 : Word; // war "BG4443"
BG4447 : Word; // war "BG4447"
BG4450 : Word; // war "BG4450"
BG4451 : Word; // war "BG4451"
BG4454 : Word; // war "BG4454"
BG4461 : Word; // war "BG4461"
BG4500 : Word; // war "BG4500"
BG4501 : Word; // war "BG4501"
BG4502 : Word; // war "BG4502"
DEPtoLP_Antriebe : Word; // war "DEPtoLP_Antriebe"
DOutbound_Bereich : Word; // war "DOutbound_Bereich"
DVPtoEP_Antriebe : Word; // war "DVPtoEP_Antriebe"
DVPtoEP_Sensoren : Word; // war "DVPtoEP_Sensoren"
DVPtoEP_Zylinder : Word; // war "DVPtoEP_Zylinder"
MA0060 : Bool; // war "MA0060"
MA0061 : Bool; // war "MA0061"
MA0151 : Bool; // war "MA0151"
MA0320 : Bool; // war "MA0320"
MA0321 : Bool; // war "MA0321"
MA0322 : Bool; // war "MA0322"
MA0323 : Bool; // war "MA0323"
MA0324 : Bool; // war "MA0324"
MA0325 : Bool; // war "MA0325"
MA0331 : Bool; // war "MA0331"
MB3247 : Byte; // war "MB3247"
MB3275 : Byte; // war "MB3275"
MB3363 : Byte; // war "MB3363"
MB3366 : Byte; // war "MB3366"
MB4443 : Byte; // war "MB4443"
MB4445 : Byte; // war "MB4445"
MB4450 : Byte; // war "MB4450"
END_VAR
VAR
Schleuse_3247 { S7_SetPoint := 'False'} : "MHMOmniSchleuse_Plus";
Schleuse_3275 { S7_SetPoint := 'False'} : "MHMOmniSchleuse";
Bereich_3361 : "MHMOmniBereich_Plus";
Schleuse_3363 { S7_SetPoint := 'False'} : "MHMOmniSchleuse";
Schleuse_3366 { S7_SetPoint := 'False'} : "MHMOmniSchleuse";
Bereich_4441 : "MHMOmniBereich_Plus";
Schleuse_4443 { S7_SetPoint := 'False'} : "MHMOmniSchleuse_Plus";
Weiche_4445 : "MHMOmniWeiche_Plus";
Schleuse_4450 { S7_SetPoint := 'False'} : "MHMOmniSchleuse_Plus";
Bereich_4454 : "MHMOmniBereich_Plus";
Übergang_4501 { S7_SetPoint := 'False'} : "MHMÜbergang_ohne_Schleuse";
END_VAR
VAR_TEMP
ErrQuit : Bool;
ErrAnz : Bool;
Stau_raus : Bool;
Start_ok : Bool;
B_aktiv : Bool;
B_vor_Schleuse : Bool;
B_nach_Schleuse : Bool;
Antrieb_aktiv : Bool;
Antrieb_vor : Bool;
Antrieb_stop : Bool;
Fahren_Ok : Bool;
Antrieb_nicht_stoppen : Bool;
END_VAR
BEGIN
REGION Systemzeug
#Schleuse_3247.Dyn.Sk.Auto_akt := #DOutbound_Bereich.A01_UH07.AnlageEin;
#Schleuse_3275.Dyn.Sk.Auto_akt := #DOutbound_Bereich.A01_UH07.AnlageEin;
#Bereich_3361.Dyn.Sk.Auto_akt := #DOutbound_Bereich.A01_UH07.AnlageEin;
#Schleuse_3363.Dyn.Sk.Auto_akt := #DOutbound_Bereich.A01_UH07.AnlageEin;
#Schleuse_3366.Dyn.Sk.Auto_akt := #DOutbound_Bereich.A01_UH07.AnlageEin;
#Bereich_4441.Dyn.Sk.Auto_akt := #DOutbound_Bereich.A01_UH07.AnlageEin;
#Schleuse_4443.Dyn.Sk.Auto_akt := #DOutbound_Bereich.A01_UH07.AnlageEin;
#Weiche_4445.Dyn.Status.Auto_akt := #DOutbound_Bereich.A01_UH07.AnlageEin;
#Schleuse_4450.Dyn.Sk.Auto_akt := #DOutbound_Bereich.A01_UH07.AnlageEin;
#Bereich_4454.Dyn.Sk.Auto_akt := #DOutbound_Bereich.A01_UH07.AnlageEin;
#Schleuse_3247.Dyn.Sk.Bereich_ok := NOT (#DOutbound_Bereich.A01_UC071.BereichErr);
#Schleuse_3275.Dyn.Sk.Bereich_ok := NOT (#DOutbound_Bereich.A01_UC071.BereichErr);
#Bereich_3361.Dyn.Sk.Bereich_ok := NOT (#DOutbound_Bereich.A01_UH07.BereichErr);
#Schleuse_3363.Dyn.Sk.Bereich_ok := NOT (#DOutbound_Bereich.A01_UH07.BereichErr);
#Schleuse_3366.Dyn.Sk.Bereich_ok := NOT (#DOutbound_Bereich.A01_UH07.BereichErr);
#Bereich_4441.Dyn.Sk.Bereich_ok := NOT (#DOutbound_Bereich.A01_UC074.BereichErr);
#Schleuse_4443.Dyn.Sk.Bereich_ok := NOT (#DOutbound_Bereich.A01_UC074.BereichErr);
#Weiche_4445.Dyn.Status.Bereich_ok := NOT (#DOutbound_Bereich.A01_UC074.BereichErr);
#Schleuse_4450.Dyn.Sk.Bereich_ok := NOT (#DOutbound_Bereich.A01_UC074.BereichErr);
#Bereich_4454.Dyn.Sk.Bereich_ok := NOT (#DOutbound_Bereich.A01_UC074.BereichErr);
END_REGION
REGION Störungen quittieren UZ7105
#ErrQuit := (#DOutbound_Bereich.A01_UZ7105.StOk_aktiv OR #DOutbound_Bereich.A01_UC071.StOk_aktiv) OR #DOutbound_Bereich.A01_UH07.StOk_aktiv;
END_REGION
REGION Schleuse 3247
#Schleuse_3247(Schleusen_Nr := 3247, ErrQuit := #ErrQuit, B_VorSchleuse := #BG3246, B_InSchleuse := #BG3247, B_Zähl := #BG3251, B_Stau_raus := #DVPtoEP_Sensoren.Stau_BG3251.Stat.B_Akt, Start_Ok := 1, Antrieb_Schleuse_aktiv := #MA0151, Antrieb_plus_aktiv := #MA0151, Schleuse_geöffnet := #MB3247, Y_Schleuse_Auf := #DVPtoEP_Zylinder.Schleuse_3247.Stat.Ast, Error := %DB708.DBW520, Antrieb_Schleuse_vor := #DVPtoEP_Antriebe.MA0151.Stat.A_vor, Antrieb_Schleuse_start := #DVPtoEP_Antriebe.MA0151.Stat.A_start, Antrieb_Schleuse_stop := #DVPtoEP_Antriebe.MA0151.Stat.Stop_vor, Antrieb_Schleuse_PS := #DVPtoEP_Antriebe.MA0151.Stat.A_PS, Antrieb_plus_vor := , hStOk := #ErrAnz); // Identisch
END_REGION
REGION Schleuse 3275
#Schleuse_3275(Schleusen_Nr := 3275, ErrQuit := #ErrQuit, B_VorSchleuse := #BG3251, B_InSchleuse := #BG3275, B_AusSchleuse := #BG3274, B_Stau_raus := #DVPtoEP_Sensoren.Stau_BG3274.Stat.B_Akt, Start_Ok := #Bereich_3361.Dyn.Sk.Bereich_ok, Antrieb_Schleuse_aktiv := #MA0151, Antrieb_plus_aktiv := #MA0060, Schleuse_geöffnet := #MB3275, RestZeit_Bereich_plus := #Bereich_3361.Dyn.Restzeit, Y_Schleuse_Auf := #DVPtoEP_Zylinder.Schleuse_3275.Stat.Ast, Error := %DB708.DBW570, Antrieb_Schleuse_vor := #DVPtoEP_Antriebe.MA0151.Stat.A_vor, Antrieb_Schleuse_start := #DVPtoEP_Antriebe.MA0151.Stat.A_start, Antrieb_Schleuse_stop := #DVPtoEP_Antriebe.MA0151.Stat.Stop_vor, Antrieb_Schleuse_PS := #DVPtoEP_Antriebe.MA0151.Stat.A_PS, Antrieb_plus_vor := #Bereich_3361.Dyn.Status.Trolley_kommt_in_Bereich, hStOk := #ErrAnz);
END_REGION
REGION Störungen anzeigen UZ7105
IF #ErrAnz THEN
#ErrAnz := FALSE;
#DOutbound_Bereich.A01_UZ7105.StOk_blinken := TRUE;
#DOutbound_Bereich.A01_UC071.StOk_blinken := TRUE;
#DOutbound_Bereich.A01_UH07.StOk_blinken := TRUE;
END_IF;
END_REGION
REGION Störungen quittieren UZ7105/0701
#ErrQuit := ((#DOutbound_Bereich.A01_UZ7105.StOk_aktiv OR #DOutbound_Bereich.A01_UZ0701.StOk_aktiv) OR #DOutbound_Bereich.A01_UC071.StOk_aktiv) OR #DOutbound_Bereich.A01_UH07.StOk_aktiv;
END_REGION
REGION Bereich 3361
#B_vor_Schleuse := #BG3274 AND #MB3275;
#Bereich_3361(Bereichs_Nr := 3361, ErrQuit := #ErrQuit, B_BereichsAnfang := #B_vor_Schleuse, B_BereichsEnde := #BG3361, B_Zähl := #BG3362, B_Stau_raus := #DVPtoEP_Sensoren.Stau_BG3362.Stat.B_Akt, Start_Ok := 1, Antrieb_Bereich_aktiv := #MA0060, Antrieb_plus_aktiv := #MA0061, Antrieb_Bereich_vor := #DVPtoEP_Antriebe.MA0060.Stat.A_vor, Antrieb_Bereich_stop := #DVPtoEP_Antriebe.MA0060.Stat.Stop_vor, Error := %DB708.DBW454, Antrieb_Bereich_start := #DVPtoEP_Antriebe.MA0060.Stat.A_start, Antrieb_plus_vor := #DVPtoEP_Antriebe.MA0061.Stat.A_vor, Antrieb_plus_start := #DVPtoEP_Antriebe.MA0061.Stat.A_start, Antrieb_minus_vor := #DVPtoEP_Antriebe.MA0151.Stat.A_vor, hStOk := #ErrAnz);
END_REGION
REGION Störungen anzeigen UZ7105/0701
IF #ErrAnz THEN
#ErrAnz := FALSE;
#DOutbound_Bereich.A01_UZ7105.StOk_blinken := TRUE;
#DOutbound_Bereich.A01_UZ0701.StOk_blinken := TRUE;
#DOutbound_Bereich.A01_UC071.StOk_blinken := TRUE;
#DOutbound_Bereich.A01_UH07.StOk_blinken := TRUE;
END_IF;
END_REGION
REGION Störungen quittieren UZ0701
#ErrQuit := #DOutbound_Bereich.A01_UZ0701.StOk_aktiv OR #DOutbound_Bereich.A01_UH07.StOk_aktiv;
END_REGION
REGION Schleuse 3363
#Schleuse_3363(Schleusen_Nr := 3363, ErrQuit := #ErrQuit, B_VorSchleuse := #BG3362, B_InSchleuse := #BG3363, B_AusSchleuse := #BG3364, B_Stau_raus := #DVPtoEP_Sensoren.Stau_BG3364.Stat.B_Akt, Start_Ok := 1, Antrieb_Schleuse_aktiv := #MA0061, Antrieb_plus_aktiv := #MA0061, Schleuse_geöffnet := #MB3363, Y_Schleuse_Auf := #DVPtoEP_Zylinder.Schleuse_3363.Stat.Ast, Error := %DB708.DBW528, Antrieb_Schleuse_vor := #DVPtoEP_Antriebe.MA0061.Stat.A_vor, Antrieb_Schleuse_start := #DVPtoEP_Antriebe.MA0061.Stat.A_start, Antrieb_Schleuse_stop := #DVPtoEP_Antriebe.MA0061.Stat.Stop_vor, Antrieb_Schleuse_PS := #DVPtoEP_Antriebe.MA0061.Stat.A_PS, Antrieb_plus_vor := , hStOk := #ErrAnz); // Identisch
END_REGION
REGION Schleuse 3366 (vor BST 1)
#Fahren_Ok := ((((NOT (#g_7_HMI_Err_UH07_OB.System.Gesamt_Feueralarm_Halle3) AND NOT (#g_7_HMI_Err_UH07_OB.System.Gesamt_Feueralarm_Halle4)) AND NOT (#g_7_HMI_Err_UH07_OB.System.BST1_Feueralarm)) AND NOT (#g_7_HMI_Err_UH07_OB.System.BST1_Geschlossen)) AND NOT (#g_7_HMI_Err_UH07_OB.System.BST1_Störung)) AND #Bereich_4441.Dyn.Sk.Bereich_ok;
#Schleuse_3366(Schleusen_Nr := 3366, ErrQuit := #ErrQuit, B_VorSchleuse := #BG3364, B_InSchleuse := #BG3366, B_AusSchleuse := #BG4440, B_Stau_raus := #DVPtoEP_Sensoren.Stau_BG4440.Stat.B_Akt, Start_Ok := #Fahren_Ok, Antrieb_Schleuse_aktiv := #MA0061, Antrieb_plus_aktiv := #MA0320, Schleuse_geöffnet := #MB3366, RestZeit_Bereich_plus := #Bereich_4441.Dyn.Restzeit, Y_Schleuse_Auf := #DVPtoEP_Zylinder.Schleuse_3366.Stat.Ast, Error := %DB708.DBW530, Antrieb_Schleuse_vor := #DVPtoEP_Antriebe.MA0061.Stat.A_vor, Antrieb_Schleuse_start := #DVPtoEP_Antriebe.MA0061.Stat.A_start, Antrieb_Schleuse_stop := #DVPtoEP_Antriebe.MA0061.Stat.Stop_vor, Antrieb_Schleuse_PS := #DVPtoEP_Antriebe.MA0061.Stat.A_PS, Antrieb_plus_vor := #Bereich_4441.Dyn.Status.Trolley_kommt_in_Bereich, hStOk := #ErrAnz);
END_REGION
REGION Störungen anzeigen UZ0701
IF #ErrAnz THEN
#ErrAnz := FALSE;
#DOutbound_Bereich.A01_UZ0701.StOk_blinken := TRUE;
#DOutbound_Bereich.A01_UH07.StOk_blinken := TRUE;
END_IF;
END_REGION
REGION Störungen quittieren UZ7401
#ErrQuit := (#DOutbound_Bereich.A01_UZ7401.StOk_aktiv OR #DOutbound_Bereich.A01_UC074.StOk_aktiv) OR #DOutbound_Bereich.A01_UH07.StOk_aktiv;
END_REGION
REGION Bereich 4441 (hinter BST 1)
IF #DVPtoEP_Sensoren.Stau_BG4440.Stat.B_Akt THEN #DVPtoEP_Antriebe.MA0320.Stat.A_start := TRUE; END_IF;
#B_vor_Schleuse := #BG4440 AND #MB3366;
#Bereich_4441(Bereichs_Nr := 4441, ErrQuit := #ErrQuit, B_BereichsAnfang := #B_vor_Schleuse, B_BereichsEnde := #BG4441, B_Zähl := #BG4442, B_Stau_raus := #DVPtoEP_Sensoren.Stau_BG4442.Stat.B_Akt, Start_Ok := 1, Antrieb_Bereich_aktiv := #MA0320, Antrieb_plus_aktiv := #MA0321, Antrieb_Bereich_vor := #DVPtoEP_Antriebe.MA0320.Stat.A_vor, Antrieb_Bereich_stop := #DVPtoEP_Antriebe.MA0320.Stat.Stop_vor, Error := %DB708.DBW474, Antrieb_Bereich_start := #DVPtoEP_Antriebe.MA0320.Stat.A_start, Antrieb_plus_vor := #DVPtoEP_Antriebe.MA0321.Stat.A_vor, Antrieb_plus_start := #DVPtoEP_Antriebe.MA0321.Stat.A_start, hStOk := #ErrAnz);
END_REGION
REGION Schleuse 4443
#Schleuse_4443(Schleusen_Nr := 4443, ErrQuit := #ErrQuit, B_VorSchleuse := #BG4442, B_InSchleuse := #BG4443, B_Zähl := , B_Stau_raus := #DVPtoEP_Sensoren.Stau_BG4445.Stat.B_Akt, Start_Ok := 1, Antrieb_Schleuse_aktiv := #MA0321, Antrieb_plus_aktiv := , Schleuse_geöffnet := #MB4443, Y_Schleuse_Auf := #DVPtoEP_Zylinder.Schleuse_4443.Stat.Ast, Error := %DB708.DBW554, Antrieb_Schleuse_vor := #DVPtoEP_Antriebe.MA0321.Stat.A_vor, Antrieb_Schleuse_start := #DVPtoEP_Antriebe.MA0321.Stat.A_start, Antrieb_Schleuse_stop := #DVPtoEP_Antriebe.MA0321.Stat.Stop_vor, Antrieb_Schleuse_PS := #DVPtoEP_Antriebe.MA0321.Stat.A_PS, Antrieb_plus_vor := , hStOk := #ErrAnz); // über Weiche | über Weiche | über Weiche
END_REGION
REGION Weiche 4445
#Antrieb_aktiv := #MA0321 AND #MA0332;
#Antrieb_vor := FALSE;
#Antrieb_stop := FALSE;
#Weiche_4445(Weichen_Nr := 4445, ErrQuit := #ErrQuit, Fahren_Ok := 1, B_Ziel_gerade := #BG4447, B_Ziel_abzweig := #BG4461, Antrieb_Weiche_aktiv := #Antrieb_aktiv, Antrieb_Gerade_aktiv := #MA0322, Antrieb_Abzweig_aktiv := #MA0331, Weiche_ist_AST := #MB4445, Y_Weiche_abzweig := #DVPtoEP_Zylinder.Weiche_4445.Stat.Ast, Error := %DB708.DBW556, Antrieb_Weiche_vor := #Antrieb_vor, Antrieb_Weiche_stop := #Antrieb_stop, Antrieb_Weiche_gerade_vor := #DVPtoEP_Antriebe.MA0322.Stat.A_vor, Antrieb_Weiche_gerade_stop := #DVPtoEP_Antriebe.MA0322.Stat.Stop_vor, Antrieb_Weiche_abzweig_vor := #DEPtoLP_Antriebe.MA0331.Stat.A_vor, Antrieb_Weiche_abzweig_stop := #DEPtoLP_Antriebe.MA0331.Stat.Stop_vor, hStOk := #ErrAnz); // da 2 Antriebe notwendig
IF #Antrieb_vor THEN
#DVPtoEP_Antriebe.MA0321.Stat.A_vor := TRUE;
#DEPtoLP_Antriebe.MA0332.Stat.A_vor := TRUE;
#DVPtoEP_Antriebe.MA0321.Stat.A_start := TRUE;
#DEPtoLP_Antriebe.MA0332.Stat.A_start := TRUE;
END_IF;
IF #Antrieb_stop THEN #DVPtoEP_Antriebe.MA0321.Stat.Stop_vor := TRUE; END_IF;
IF #Antrieb_stop AND #MB4445 THEN #DEPtoLP_Antriebe.MA0332.Stat.Stop_vor := TRUE; END_IF;
IF #Weiche_4445.Dyn.Status.Weiche_frei THEN #DVPtoEP_Zylinder.Weiche_4445.Stat.Ast := FALSE; END_IF;
END_REGION
REGION Schleuse 4450
#Antrieb_vor := FALSE;
#Schleuse_4450(Schleusen_Nr := 4450, ErrQuit := #ErrQuit, B_VorSchleuse := #BG4447, B_InSchleuse := #BG4450, B_Zähl := #BG4451, B_Stau_raus := #DVPtoEP_Sensoren.Stau_BG4451.Stat.B_Akt, Start_Ok := 1, Antrieb_Schleuse_aktiv := #MA0322, Antrieb_plus_aktiv := #MA0323, Schleuse_geöffnet := #MB4450, RestZeit_Bereich_plus := #Bereich_4454.Dyn.Restzeit, Y_Schleuse_Auf := #DVPtoEP_Zylinder.Schleuse_4450.Stat.Ast, Error := %DB708.DBW558, Antrieb_Schleuse_vor := #DVPtoEP_Antriebe.MA0322.Stat.A_vor, Antrieb_Schleuse_start := #DVPtoEP_Antriebe.MA0322.Stat.A_start, Antrieb_Schleuse_stop := #DVPtoEP_Antriebe.MA0322.Stat.Stop_vor, Antrieb_Schleuse_PS := #DVPtoEP_Antriebe.MA0322.Stat.A_PS, Antrieb_plus_vor := #Antrieb_vor, hStOk := #ErrAnz);
IF #Antrieb_vor THEN
#DVPtoEP_Antriebe.MA0322.Stat.A_vor := TRUE;
#Bereich_4454.Dyn.Status.Trolley_kommt_in_Bereich := TRUE;
END_IF;
END_REGION
REGION Störungen anzeigen UZ7401
IF #ErrAnz THEN
#ErrAnz := FALSE;
#DOutbound_Bereich.A01_UZ7401.StOk_blinken := TRUE;
#DOutbound_Bereich.A01_UC074.StOk_blinken := TRUE;
#DOutbound_Bereich.A01_UH07.StOk_blinken := TRUE;
END_IF;
END_REGION
REGION Störungen quittieren UZ7401/7402
#ErrQuit := ((#DOutbound_Bereich.A01_UZ7401.StOk_aktiv OR #DOutbound_Bereich.A01_UZ7402.StOk_aktiv) OR #DOutbound_Bereich.A01_UC074.StOk_aktiv) OR #DOutbound_Bereich.A01_UH07.StOk_aktiv;
END_REGION
REGION Bereich 4454
#B_vor_Schleuse := #BG4453 AND #MB4450;
#Stau_raus := (#DVPtoEP_Sensoren.Stau_BG4500.Stat.B_Akt OR #DVPtoEP_Sensoren.Stau_BG4530.Stat.B_Akt) OR #DVPtoEP_Sensoren.Stau_BG4502.Stat.B_Akt;
#Bereich_4454(Bereichs_Nr := 4454, ErrQuit := #ErrQuit, B_BereichsAnfang := #B_vor_Schleuse, B_BereichsEnde := #BG4454, B_Zähl := #BG4500, B_Stau_raus := #Stau_raus, Start_Ok := 1, Antrieb_Bereich_aktiv := #MA0323, Antrieb_plus_aktiv := #MA0324, Antrieb_Bereich_vor := #DVPtoEP_Antriebe.MA0323.Stat.A_vor, Antrieb_Bereich_stop := #DVPtoEP_Antriebe.MA0323.Stat.Stop_vor, Error := %DB708.DBW476, Antrieb_Bereich_start := #DVPtoEP_Antriebe.MA0323.Stat.A_start, Antrieb_plus_vor := #DVPtoEP_Antriebe.MA0324.Stat.A_vor, Antrieb_plus_start := #DVPtoEP_Antriebe.MA0324.Stat.A_start, Antrieb_minus_vor := #DVPtoEP_Antriebe.MA0322.Stat.A_vor, hStOk := #ErrAnz);
END_REGION
REGION MA0324 / Übergang 4501
#B_vor_Schleuse := #BG4500 OR #BG4530;
#Übergang_4501(ErrQuit := #ErrQuit, B_Anfang := #B_vor_Schleuse, B_Am_Übergang := #BG4501, B_Stau_Antrieb_plus := #BG4502, Antrieb_aktiv := #MA0324, Antrieb_plus_aktiv := #MA0325, Antrieb_vor := #DVPtoEP_Antriebe.MA0324.Stat.A_vor, Antrieb_start := #DVPtoEP_Antriebe.MA0324.Stat.A_start, Antrieb_stop := #DVPtoEP_Antriebe.MA0324.Stat.A_PS, Antrieb_plus_vor := #DVPtoEP_Antriebe.MA0325.Stat.A_vor, Antrieb_plus_start := #DVPtoEP_Antriebe.MA0325.Stat.A_start);
END_REGION
REGION Störungen anzeigen UZ7401/7402
IF #ErrAnz THEN
#ErrAnz := FALSE;
#DOutbound_Bereich.A01_UZ7401.StOk_blinken := TRUE;
#DOutbound_Bereich.A01_UZ7402.StOk_blinken := TRUE;
#DOutbound_Bereich.A01_UC074.StOk_blinken := TRUE;
#DOutbound_Bereich.A01_UH07.StOk_blinken := TRUE;
END_IF;
END_REGION
REGION Ende
RETURN;
END_REGION
END_FUNCTION_BLOCK