Сделайте обработку аварий средствами программного кода. Это проще, по крайней мере я так делаю без всяких доп библиотек кодесиса.
//Обработка аварий
FOR i:= 1 TO 32 DO
IF TMP_MEC.ALA_CUR[i] THEN TMP_MEC.ALA_MEM[i]:= TRUE; END_IF //Взвод бита аварии в память
IF TMP_MEC.ALA_MEM[i] AND TMP_MEC.COM_RES THEN TMP_MEC.ALA_CON[i]:= TRUE; END_IF //Взвод бита подтветждения аварии
IF TMP_MEC.ALA_CON[i] AND NOT TMP_MEC.ALA_CUR[i] THEN
TMP_MEC.ALA_MEM[i]:= FALSE; //Сброс бита аварии из памяти при отсутствии аварии после подтверждения
TMP_MEC.ALA_CON[i]:= FALSE; //Сброс бита подтветждения аварии при отсутствии аварии после подтверждения
END_IF
IF NOT(NOT TMP_MEC.ALA_MEM[i] OR (TMP_MEC.PAR_DIS[i] AND TMP_MEC.COM_DIS[i])) THEN
TMP_MEC.STA_REA:= FALSE; //Сброс бита готовности
TMP_MEC.STA_ALA:= TRUE; //Взведение бита аварии
END_IF
END_FOR




Ответить с цитированием