0 THEN RefillDIWTimeout(IN := bOutTankDIW, PT := LREAL_TO_TIME(RefillMaxTime*1000)); END_IF IF RefillDIWTimeout.Q OR bInTankFull THEN bOutTankDIW := FALSE; END_IF IF bCoolDown THEN IF vTankRecirculation THEN IF vPressurePump THEN rInTargetPressure := 0.1; END_IF bOutRecirculation := FALSE; ELSE InCMD := ePumpCmd.Poff; END_IF END_IF //IF RefillDIWTimeout.Q THEN // Error := TRUE; // error_index := AlarmSend(iStation, ErrorIndexRefillTimeOut, TRUE, eReportType.Info, sAvailableResponse.Ok, FALSE); //END_IF]]> Comment ); 20: CASE Language OF 0: Comment := 'Waiting for the tank to be filled with water.'; 1: Comment := 'Warten, bis der Tank mit Wasser gefüllt ist.'; END_CASE bOutTankDIW := TRUE; IF bInTankFull THEN bOutTankDIW := FALSE; Step := 30; END_IF 30: bOutDrain := TRUE; IF NOT bInTankNotEmpty THEN Step := Step +1; END_IF CASE Language OF 0: Comment := 'Waiting for the tank to empty.'; 1: Comment := 'Warten, bis der Tank leer ist.'; END_CASE 31: Timer(IN := TRUE, PT := T#10S); IF Timer.Q THEN Timer(IN := FALSE); bOutDrain := FALSE; Step := 40; END_IF TimeLeft := TIME_TO_LREAL(Timer.PT - Timer.ET)/1000; CASE Language OF 0: format := 'Waiting %0.1fs.'; 1: format := 'Warten %0.1fs.'; END_CASE fbFormat( sFormat := format, arg1 := F_LREAL(TimeLeft), sOut => Comment ); 40: Counter := Counter +1; IF Counter >= Config.CleaningCycles THEN Step := 50; ELSE Step := 20; END_IF 50: Comment := ''; bInStartCleanning := FALSE; bOutCleanningDone := TRUE; Step := 0; END_CASE]]>