Добрый день.
Можно использовать функциональный блок, который будет следить за состоянием связи с определенным slave-устройством.
К посту прикреплю .exp (в архиве) файл с подобным блоком.
Блок должен получать на вход адрес устройства, с которым мониторится связь, признак последней ошибки (из конфигурации ПЛК) и номер последнего опрошенного slave-устройства (так же устанавливается из конфигурации ПЛК).
Если заданный адрес и адрес последнего устройства, с которым была попытка, обмена, совпали - проверяем признак последней ошибки обмена на неравенство "0".
Если номер ошибки > 0 - значит ошибка связи.
ФБ, который прилагается к посту, так же выполняет подсчет кол-ва ошибок связи с указанным устройством.
Чтобы использовать этот блок в своем проекте, разархивируйте его в удобную для Вас папку, а после в Codesys выполните следующие шаги:
Проект -> Импорт -> Найдите разархивированный файл ModbusErrorsControl.exp -> Нажмите "ОК".
ФБ появится в древе POU проекта и Вы сможете использовать его далее.





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