FUNCTION "AMRZeiger_ermitteln" : Void { 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 AMR_X : Word; // AMR zum Beeinflussen MW224 : Word; // war "MW224" MW226 : Word; // war "MW226" END_VAR VAR_OUTPUT AMR_DB : Int; AMR_DW : Int; Error : Bool; g_6_HMI_Err_UH06_AMR : Word; // war "6_HMI_Err_UH06_AMR" MW200 : Word; // war "MW200" END_VAR VAR_IN_OUT MB199 : Byte; // war "MB199" END_VAR VAR_TEMP Position : Int; END_VAR BEGIN REGION Zeiger für AMR_X ermitteln #MW200 := #AMR_X; // Einsprung AMR ermitteln: "DatenOut"(SSDB := 276, SSDW := 0, PARA := 16#0000, SEARCHDATEN := P#M200.0, RE_VAL := #MB199, OUTDATEN := P#M220.0, Position := #Position); // Eintrag lesen #g_6_HMI_Err_UH06_AMR.Logistik.DB276_Err := (#MB199 AND 2#1111111) <> 0; #Error := (#MB199 AND 2#1111111) <> 0; IF (#MB199 AND 2#1111111) <> 0 THEN RETURN; END_IF; #AMR_DB := #MW224; #AMR_DW := #MW226; END_REGION REGION Ende RETURN; END_REGION END_FUNCTION