IF pusk=TRUE THEN step:=1;END_IF
IF step=1 AND TON1.Q THEN step:=2;END_IF
IF step=2 AND temp=temp_1 THEN step:=3;END_IF
IF step=3 AND ton1.Q THEN step:=4:END_IF
IF step=4 AND temp=temp_2 THEN step:=5;END_IF
IF step=5 AND ton1.Q THEN step:=6;END_IF
CASE step OF
1
roduvka:=TRUE;TON1(IN:=TRUE , PT:=time_1 , Q=> , ET=> );
2
roduvka:=FALSE;TON1(IN:=FALSE);nagrev:=TRUE AND NOT temp>=temp_1;
3
roduvka:=FALSE;TON1(IN:=TRUE,PT:=time_2);nagrev:=T RUE AND NOT temp>=temp_1;
4
roduvka:=FALSE;TON1(IN:=FALSE);nagrev:=TRUE AND NOT temp>=temp_2;
5
roduvka:=FALSE;TON1(IN:=TRUE,PT:=time_3);nagrev:=T RUE AND NOT temp>=temp_2;
6
roduvka:=FALSE;TON1(IN:=FALSE);nagrev:=FALSE;cool: =TRUE;
END_CASE;
Вот простенький вариант