Требуется примерно вот такое (по входу DI1 в течении 1 с включается DO1, отключается или через 1с или если DI2).

TP1(IN:=DI1, PT:=T#1s);
RS1(SET:=TP1.Q, RESET:=(TP1.ET=t#1s OR DI2);
DO1:=RS1.Q;

Таких DO у меня штук 20, я решил сделать функцию , которая будет выбирать какой DO дергать. Примерно вот так:

Function DO_Choice: bool;
Var_input
DO_Num:usint;
end_var

if DO_Num=1 then DO=DO1
...
elseif DO_Num=20 then DO=DO20
end_if

и в программе уже подставлять вместо конкретного DO1 переменную DO которая бы соответствовала правильному выходу плк.

Вопрос - как жестко связать переменную с выходом плк, чтобы такая программа бы заработала?