if flagOne = true then
HoldingTimer (IN := TRUE, PT := holdingTime); // Запуск таймера поддержания
IF HoldingTimer.ET > T#90S THEN
CollectionTimer(IN := TRUE, PT := T#1S);
if CollectionTimer.Q = true then
targetMassive[Index] := xAi7;
Index := Index + 1;
CollectionTimer(IN := FALSE);
end_if
end_if
if HoldingTimer.Q = true THEN
tempReached := TRUE;
massiveReacher:=true;
currentTempIndex := currentTempIndex + 1;
end_if
end_if
IF tempReached = TRUE THEN
CASE currentTempIndex OF
2: IF t2 > 0 THEN
IF (T2<xAi6) THEN
integral := 0.0;
previousError := 0.0;
xAo1 := 0;
// Остановка таймера PID
timerPID(IN := FALSE);
mainflag:=true;
holdingTimer(IN := FALSE);
holdingTime := TimeForCalibration;
elsif (xAi6 <= T2) or (xAi6 <= targetTemp) then
targetTemp := t2;
holdingTimer(IN := FALSE);
holdingTime := TimeForCalibration;
flagOne:=false;
mainflag:=false;
tempReached:=FALSE;
end_if
END_IF