1. TIA Portal Professional V17;
2. S7-1200 firmware 4.5.0.
При использовании такого алгоритма:
Код: Выделить всё
"OPC_GDB".GA_CO := DWORD_TO_REAL("Modbus_GDB".EL3020.Comp1);
IF "OPC_GDB".GA_CO <= 0.0 THEN
"OPC_GDB".GA_CO := 0.0;
END_IF;
При замене выше описанного алгоритма на:
Код: Выделить всё
IF DWORD_TO_REAL("Modbus_GDB".EL3020.Comp1) <= 0.0 THEN
"OPC_GDB".GA_CO := 0.0;
ELSE
"OPC_GDB".GA_CO := DWORD_TO_REAL("Modbus_GDB".EL3020.Comp1);
END_IF;
Сразу скажу, больше нигде в программе записи в данную переменную нет, DB-шки где лежат переменные не оптимизированные.
Вопрос. Это нормальное поведение ПЛК? Кто-нибудь сталкивался с таким? Обнаружил такое поведение сразу для нескольких переменных.
P.S. После заливки программы на чистый ПЛК, его пару раз прогружали через "only changes", прогрузить через "rebuild all" и проверить глюк ли это или баг пока нет возможности, так как установка в работе.