Files

95 lines
4.3 KiB
Plaintext

FUNCTION_BLOCK "VP_Antriebe"
{ 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
DOutbound_Bereich : Word; // war "DOutbound_Bereich"
SGes : Word; // war "SGes"
T191 : Word; // war "T191"
END_VAR
VAR_IN_OUT
g_7_HMI_Err_UH07_OB : Word; // war "7_HMI_Err_UH07_OB"
FC0145 : Word; // war "FC0145"
FC0146 : Word; // war "FC0146"
FC0147 : Word; // war "FC0147"
FC0150 : Word; // war "FC0150"
FC0152 : Word; // war "FC0152"
MA0145 : Bool; // war "MA0145"
MA0146 : Bool; // war "MA0146"
MA0147 : Bool; // war "MA0147"
MA0150 : Bool; // war "MA0150"
MA0152 : Bool; // war "MA0152"
END_VAR
VAR
MA0145 : "MAntrieb_PowerSave";
MA0146 : "MAntrieb_PowerSave";
MA0147 : "MAntrieb_PowerSave";
MA0150 : "MAntrieb_PowerSave";
MA0152 : "MAntrieb_PowerSave";
END_VAR
VAR_TEMP
Auto : Bool; // Automatik Linie ist aktiv
Hand : Bool; // Hand Linie ist aktiv
BereichErr : Bool; // Bereichsstörung -> Antrieb stoppen
QKontroll : Bool; // Frequenzumrichter schon 3s Netz EIN
FuKontroll : Bool; // Frequenzumrichter schon 3s Netz EIN
Quit : Bool; // Motorschutz-Störung quittieren
Qok : Bool; // Motorschutz ok
Jog1 : Bool; // Geschwindigkeit 1
Jog2 : Bool; // Geschwindigkeit 2
Betrieb : Bool; // Betriebsart aktiv
FC105_RET : Word; // Returnwert von FC105
Antrieb1 : Bool; // Antrieb dazuschalten
Antrieb2 : Bool; // Antrieb dazuschalten
F1 : Bool; // Geschwindigkeit 1 aktiviert
F2 : Bool; // Geschwindigkeit 2 aktiviert
F3 : Bool; // Geschwindigkeit 3 aktiviert
BereichErr_Zusatz_7102 : Bool; // Bereichsstörung -> Antrieb stoppen
BereichErr_Zusatz_7104 : Bool; // Bereichsstörung -> Antrieb stoppen
BereichErr_Zusatz_7102_7104 : Bool; // Bereichsstörung -> Antrieb stoppen
END_VAR
BEGIN
REGION Übergabe des Bereichstatus System UC071/A01
#Auto := #DOutbound_Bereich.A01_UH07.Automatik AND NOT (#DOutbound_Bereich.A01_UH07.Handbetrieb);
#Hand := FALSE;
#BereichErr := #DOutbound_Bereich.A01_UC071.BereichErr;
#BereichErr_Zusatz_7102 := (#BereichErr OR #DOutbound_Bereich.A01_UZ7102.Area_Stop) AND NOT (#SGes.Simulation_ohne_HW_aktiv);
#BereichErr_Zusatz_7104 := (#BereichErr OR #DOutbound_Bereich.A01_UZ7104.Area_Stop) AND NOT (#SGes.Simulation_ohne_HW_aktiv);
#BereichErr_Zusatz_7102_7104 := ((#BereichErr OR #BereichErr_Zusatz_7102) OR #BereichErr_Zusatz_7104) AND NOT (#SGes.Simulation_ohne_HW_aktiv);
#QKontroll := #T191;
#FuKontroll := #T191;
#Quit := #DOutbound_Bereich.A01_UC071.StOk_aktiv;
END_REGION
REGION MA0145
#MA0145(Automatik := #Auto, Handbetrieb := #Hand, BereichErr := #BereichErr_Zusatz_7102, Q := #FC0145, Ptc := TRUE, QKontroll := #QKontroll, ErrQuit := #Quit, Antriebvor := #MA0145, QErr := #g_7_HMI_Err_UH07_OB.QErr.MA0145);
END_REGION
REGION MA0146
#MA0146(Automatik := #Auto, Handbetrieb := #Hand, BereichErr := #BereichErr_Zusatz_7102, Q := #FC0146, Ptc := TRUE, QKontroll := #QKontroll, ErrQuit := #Quit, Antriebvor := #MA0146, QErr := #g_7_HMI_Err_UH07_OB.QErr.MA0146);
END_REGION
REGION MA0147
#MA0147(Automatik := #Auto, Handbetrieb := #Hand, BereichErr := #BereichErr_Zusatz_7104, Q := #FC0147, Ptc := TRUE, QKontroll := #QKontroll, ErrQuit := #Quit, Antriebvor := #MA0147, QErr := #g_7_HMI_Err_UH07_OB.QErr.MA0147);
END_REGION
REGION MA0150
#MA0150(Automatik := #Auto, Handbetrieb := #Hand, BereichErr := #BereichErr_Zusatz_7104, Q := #FC0150, Ptc := TRUE, QKontroll := #QKontroll, ErrQuit := #Quit, Antriebvor := #MA0150, QErr := #g_7_HMI_Err_UH07_OB.QErr.MA0150);
END_REGION
REGION MA0152
#MA0152(Automatik := #Auto, Handbetrieb := #Hand, BereichErr := #BereichErr_Zusatz_7102_7104, Q := #FC0152, Ptc := TRUE, QKontroll := #QKontroll, ErrQuit := #Quit, Antriebvor := #MA0152, QErr := #g_7_HMI_Err_UH07_OB.QErr.MA0152);
END_REGION
REGION Ende
RETURN;
END_REGION
END_FUNCTION_BLOCK