Добрый день.
Пытаюсь с помощью ПЛК210 по Modbus TCP читать состояние 5 источников питания (не ОВЕН). В проекте используются OCL.TCP_Client и OCL.MB_TcpRequest из OwenCmmunication. Поведение проекта одинаковое на ПЛК200 и ПЛК210 (последние прошивки). CODESYS 3.5 sp17 patch 3.
Какое-то случайное время после старта всё работает нормально. Затем появляется ошибка 53 SLAVE_DEVICE_FAILURE для одного из источников питания. ПЛК закрывает TCP соединение с этим источником питания, открывает снова и восстанавливает связь. Но при этом на оставшихся 4 источниках питания в последующие несколько секунд тоже появляются ошибки 53. Как только для всех источников питания пройдет процедура закрытия и открытия соединения, всё опять начинает работает нормально. Затем история повторяется. Время между повторами от минуты до нескольких часов. Ошибка 53 приходит для всех источников питания в течение 10-15 секунд. Пробовал читать эти же источники питания через доставшийся по наследству код в LabView - за неделю ни разу ошибок Modbus TCP не видел. Даже если оставить в проекте чтение только одного источника питания - ошибка продолжает возникать. Пробовал искусственно добавлять задержки после каждой операции, но результат тот-же. Первым делом грешил на TCP соединение, но там все нормально, ошибки именно от modbus TCP. Как понять почему появляется ошибка 53 и, особенно, почему ошибки с какой-то малой задержкой появляются сразу для всех считываемых устройств?