Код:
IF Rezh_post_dv THEN
Rezhim:=1;
ELSE
IF Rezh_shag THEN
Rezhim:=2;
ELSE
IF Rezh_progon THEN
Rezhim:=3;
END_IF
END_IF
END_IF
CASE Rezhim OF
1: PCHV_cont_mode1 (Cont_mode_avar:=Avaria, (*Сигнал авария из блока аварий*)
vybeg:=Privod_stop, (* Привод конвейера: стоп *)
pusk:=Privod_vpered, (* Привод конвейера: вперед *)
revers:=Privod_nazad, (* Привод конвейера: назад *)
Com_word=>Com_slovo, (*Командное слово*)
Stat_word:=Slovo_sost, (*Слово состояния*)
);
PCHV_prog_mode1(Prog_mode_avar:=FALSE,
Prog_mode_polozh_izlozh:=FALSE,
Prog_mode_Podogrev_Stop=>Prog_mode_podogr_stop,
vybeg:=FALSE,
pusk:=FALSE,
Com_word=>,
Stat_word:=0,
);
PCHV_step_mode1(Step_mode_avar:=FALSE,
Step_mode_pol_izl:=FALSE,
vybeg:=FALSE,
pusk:=FALSE,
revers:=FALSE,
Com_word=>,
Stat_word:=0,
);
2: PCHV_step_mode1(Step_mode_avar:=avaria,
Step_mode_pol_izl:=Polozh_izlozh,
vybeg:=Privod_stop,
pusk:=Privod_vpered,
revers:=Privod_nazad,
Com_word=>Com_slovo,
Stat_word:=Slovo_sost,
);
PCHV_cont_mode1(Cont_mode_avar:=FALSE,
vybeg:=FALSE,
pusk:=FALSE,
revers:=FALSE,
Com_word=>,
Stat_word:=0,
);
PCHV_prog_mode1(Prog_mode_avar:=FALSE,
Prog_mode_polozh_izlozh:=FALSE,
Prog_mode_Podogrev_Stop=>Prog_mode_podogr_stop,
vybeg:=FALSE,
pusk:=FALSE,
Com_word=>,
Stat_word:=0,
);
3: PCHV_prog_mode1(Prog_mode_avar:=Avaria,
Prog_mode_polozh_izlozh:=Polozh_izlozh,
Prog_mode_Podogrev_Stop=>Prog_mode_podogrev_end,
vybeg:=Privod_stop,
pusk:=Privod_vpered,
Com_word=>Com_slovo,
Stat_word:=Slovo_sost,
);
PCHV_cont_mode1(Cont_mode_avar:=FALSE,
vybeg:=FALSE,
pusk:=FALSE,
revers:=FALSE,
Com_word=>,
Stat_word:=0,
);
PCHV_step_mode1(Step_mode_avar:=FALSE,
Step_mode_pol_izl:=FALSE,
vybeg:=FALSE,
pusk:=FALSE,
revers:=FALSE,
Com_word=>,
Stat_word:=0,
);
ELSE
Alarm_ne_vybran_rezhim:=TRUE;
END_CASE