FUNCTION_BLOCK "HWtoAMR_Zylinder" { 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 DAMR_Bereich : Word; // war "DAMR_Bereich" END_VAR VAR_IN_OUT MB3000 : Byte; // war "MB3000" MB3004 : Byte; // war "MB3004" MB3005 : Byte; // war "MB3005" MB3061 : Byte; // war "MB3061" MB3562 : Byte; // war "MB3562" MB3565 : Byte; // war "MB3565" END_VAR VAR Schleuse_3061 : "MZylinder"; // Schleuse_3005 : "MZylinder"; Schleuse_3004 : "MZylinder"; Schleuse_3000 : "MZylinder"; Schleuse_3562 : "MZylinder"; Schleuse_3565 : "MZylinder"; // END_VAR VAR_TEMP Auto : Bool; // Automatik ist aktiv Hand : Bool; // Hand ist aktiv ZylAst : Bool; // Zylinder ansteuern END_VAR BEGIN REGION Übergabe des Bereichstatus System UC061/A01 #Auto := #DAMR_Bereich.A01_UH06.Automatik AND NOT (#DAMR_Bereich.A01_UH06.Handbetrieb); IF ((#DAMR_Bereich.A01_UC061.BereichErr OR #DAMR_Bereich.A01_UZ6102.Area_Stop) OR #DAMR_Bereich.A01_UZ6103.Area_Stop) OR #DAMR_Bereich.A01_UZ6104.Area_Stop THEN GOTO Next; END_IF; END_REGION REGION Schleuse_3061 #Schleuse_3061(Automatik := #Auto, Handbetrieb := FALSE, T_Ast := 0, T_Gst := 5, ZylAst := #MB3061); END_REGION REGION Schleuse_3005 #Schleuse_3005(Automatik := #Auto, Handbetrieb := FALSE, T_Ast := 0, T_Gst := 5, ZylAst := #MB3005); END_REGION REGION Schleuse_3004 #Schleuse_3004(Automatik := #Auto, Handbetrieb := FALSE, T_Ast := 0, T_Gst := 5, ZylAst := #MB3004); END_REGION REGION Übergabe des Bereichstatus System UH06 / A01 #Auto := #DAMR_Bereich.A01_UH06.Automatik AND NOT (#DAMR_Bereich.A01_UH06.Handbetrieb); IF #DAMR_Bereich.A01_UH06_Halle4.BereichErr THEN GOTO Next2; END_IF; END_REGION REGION Schleuse_3000 #Schleuse_3000(Automatik := #Auto, Handbetrieb := FALSE, T_Ast := 0, T_Gst := 5, ZylAst := #MB3000); END_REGION REGION Schleuse_3562 #Schleuse_3562(Automatik := #Auto, Handbetrieb := FALSE, T_Ast := 0, T_Gst := 5, ZylAst := #MB3562); END_REGION REGION Schleuse_3565 #Schleuse_3565(Automatik := #Auto, Handbetrieb := FALSE, T_Ast := 0, T_Gst := 5, ZylAst := #MB3565); END_REGION REGION Ende RETURN; END_REGION END_FUNCTION_BLOCK