Цитата Сообщение от DENth Посмотреть сообщение
Добрый день! Просьба помочь разобраться. СПК110[M01] на объекте периодически раз в день или чаще зависает. После перевода в конфигураторе режима обработки исключения в TraceInfo удалось понять, что причина зависания - деление на ноль. Анализ проекта показал, что все деления в коде защищены проверкой. Возможно ли, что выводимое сообщение вызвано каким-то другим событием, например, помехой по линии питания или иной? И как, с точки зрения практики, осуществить поиск проблемного места в коде, если закономерности в зависании нет и это событие происходит крайне редко. Но естественно не должно происходить вовсе.
Добрый день.
Вероятность того, что деление на ноль вызвано внешним событием - крайне мала.
Основных вариантов два:

1. Деление происходит в результате каких-то специфических ситуаций, не фиксируемых проверками.
2. Деление происходит в библиотеках.

С точки зрения отладки - можно подключиться в момент зависания из CODESYS и проверить значения переменных.
По идее, проблемная строка должна быть подсвечена в коде желтым.