FUNCTION_BLOCK "Abführung_OmniFahren"
TITLE = Abführung Arbeitsplätze
{ S7_Optimized_Access := 'FALSE' }
VERSION : 0.1
   VAR 
      Schleuse_3540 { S7_SetPoint := 'False'} : "MHMOmniSchleuse";
      Schleuse_3543 { S7_SetPoint := 'False'} : "MHMOmniSchleuse";
   END_VAR

   VAR_TEMP 
      ErrQuit : Bool;
      ErrAnz : Bool;
      Stau_raus : Bool;
      Start_ok : Bool;
      B_aktiv : Bool;
      B_AusSchleuse : Bool;
      Antrieb_aktiv : Bool;
      Antrieb_start : Bool;
      Antrieb_stop : Bool;
      Fahren_Ok : Bool;
   END_VAR


BEGIN
NETWORK
TITLE = Systemzeug

//Abführ-Bereich:
      U "DAMR_Bereich".A01_UH06.AnlageEin;
      = #Schleuse_3540.Dyn.Sk.Auto_akt;
      = #Schleuse_3543.Dyn.Sk.Auto_akt;

      UN "DAMR_Bereich".A01_UH06.BereichErr;
      = #Schleuse_3540.Dyn.Sk.Bereich_ok;
      = #Schleuse_3543.Dyn.Sk.Bereich_ok;

NETWORK
TITLE = Störungen quittieren
      U "DAMR_Bereich".A01_UH06.StOk_aktiv;
      = #ErrQuit;

NETWORK
TITLE = Schleuse hinter MPS1
      CALL #Schleuse_3540
      (  Schleusen_Nr                := 3540 , 
         ErrQuit                     := #ErrQuit , 
         B_VorSchleuse               := "BG3541" , 
         B_InSchleuse                := "BG3540" , 
         B_AusSchleuse               := "BG3542" , 
         B_Stau_raus                 := "DArbeitsplätze_Sensoren".Stau_BG3542.Stat.B_Akt , 
         Start_Ok                    := 1 , 
         Antrieb_Schleuse_aktiv      := "MA0112" , 
         Antrieb_plus_aktiv          := "MA0112" , 
         Schleuse_geöffnet           := "MB3540" , 
         Y_Schleuse_Auf              := "DArbeitsplätze_Zylinder".Schleuse_3540.Stat.Ast , 
         Error                       := %DB608.DBW350 , 
         Antrieb_Schleuse_vor        := "DArbeitsplätze_Antriebe".MA0112.Stat.A_vor , 
         Antrieb_Schleuse_start      := "DArbeitsplätze_Antriebe".MA0112.Stat.A_start , 
         Antrieb_Schleuse_stop       := "DArbeitsplätze_Antriebe".MA0112.Stat.Stop_vor , 
         Antrieb_Schleuse_PS         := "DArbeitsplätze_Antriebe".MA0112.Stat.A_PS , 
         hStOk                       := #ErrAnz
      );

NETWORK
TITLE = Schleuse vor BST 4
      UN "6_HMI_Err_UH06_AMR".System.Gesamt_Feueralarm;
      UN "6_HMI_Err_UH06_AMR".System.BST4_Feueralarm;
      UN "6_HMI_Err_UH06_AMR".System.BST4_Geschlossen;
      UN "6_HMI_Err_UH06_AMR".System.BST4_Störung;
      U "DHW>OB_OmniFahren".Schleuse_3546.Dyn.Sk.Bereich_ok;
///      UN    #Trolleys_starten.Wartezeit_aktiv  //Neu: Vor AFS runter
      = #Fahren_Ok;

      U "DHW>OB_Sensoren".Stau_BG3570.Stat.B_Akt;
      O "DHW>OB_Sensoren".Stau_BG3544.Stat.B_Akt;
      = #Stau_raus;

      CALL #Schleuse_3543
      (  Schleusen_Nr                := 3543 , 
         ErrQuit                     := #ErrQuit , 
         B_VorSchleuse               := "BG3542" , 
         B_InSchleuse                := "BG3543" , 
         B_AusSchleuse               := "BG3570" , 
         B_Stau_raus                 := #Stau_raus , 
         Start_Ok                    := #Fahren_Ok , 
         Antrieb_Schleuse_aktiv      := "MA0112" , 
         Antrieb_plus_aktiv          := "MA0113" , 
         Schleuse_geöffnet           := "MB3543" , 
         Y_Schleuse_Auf              := "DArbeitsplätze_Zylinder".Schleuse_3543.Stat.Ast , 
         Error                       := %DB608.DBW352 , 
         Antrieb_Schleuse_vor        := "DArbeitsplätze_Antriebe".MA0112.Stat.A_vor , 
         Antrieb_Schleuse_start      := "DArbeitsplätze_Antriebe".MA0112.Stat.A_start , 
         Antrieb_Schleuse_stop       := "DArbeitsplätze_Antriebe".MA0112.Stat.Stop_vor , 
         Antrieb_Schleuse_PS         := "DArbeitsplätze_Antriebe".MA0112.Stat.A_PS , 
         Antrieb_plus_vor            := "DHW>OB_Antriebe".MA0113.Stat.A_vor , 
         Antrieb_plus_start          := "DHW>OB_Antriebe".MA0113.Stat.A_start , 
         hStOk                       := #ErrAnz
      );

NETWORK
TITLE = Störungen anzeigen
      U #ErrAnz;
      R #ErrAnz;
      S "DAMR_Bereich".A01_UH06.StOk_blinken;

NETWORK
TITLE = Ende
      BE;

END_FUNCTION_BLOCK

