Все верно, есть системные регистры.
https://owen.ru/uploads/388/sp3xx_rp_2.2.pdf
стр. 195.
2024-11-21_10-03-54.png
К сожалению, только для TCP-устройств. А вот для PLC и Download такого нет (наверное).
Но есть возможность запретить панели опрашивать устройства (стр. 245), если знаешь их адресa.
Имеется в виду PSW66 и PSW76?
А как этим пользоваться? К примеру есть цикл опроса 8 слейвоф - как будет меняться состояние регистра и как отловить, что к примеру три из восьми "покинули чат"?
То есть мысль такая - отвалились по той ли иной причине несколько слейвоф (ну обесточили их временно например) - дабы не тормозить панель - после 3-4 превышений таймаута ожидания с данного адреса повесить бит "запрет обмена".
Может быть грубо, но все же...
Вы хотите построить систему с модулями, трмами, сделать проверку связи, исключение из опроса, но стали экономить на контроллере и решили все это реализовать на панели, которая вообще для этого не предназначена.
на всех панелях пишут, что в панель нельзя использовать в качестве плк и реализовывать на ней логику управления процессами.
Кроилово ведет к попадалову.
Так же про обесточивание и т.д. Если у Вас несколько процессов, которые вы сводите на одну панель, опять же из-за экономии, то ни к чему хорошему это не приведет. Стройте изначально распределенную систему управления, а если нет, то не пофиг ли на торможение панели если Вы вырубили половину оборудования и весь тех процесс остановлен?
Возможно так. Однако я ограничен ТЗ - и панель используется только для визуализации, система распределена и автономна по параметрам управления. ("Это не мои тараканы - это ихние")
И потом - абстрагируясь - задача - опросить слейвы, выдать оператору информацию с распределенной системы из десятка-полтора мест, нарисовать тренды, выдать аварийные сообщения. Ни управления, ни математики запредельной, ни ПИД - на кой контроллер? Панель является мастером, соответственно должна по идее определять кто из абонентов в сети. Или я слишком много ожидаю от панели?
При этом авария или отключение только одного модбас сервера приведёт к тормозам на панели в 3 секунды. А если ещё 1 трм отключите на ремонт, то ещё 3 секунды... Ну флаг вам в руки. Даже ПЛК, если в программе не продумать действия при таких ситуациях, опрос работающих устройств отвалится..
При выведении в ремонт (сознательном отключении) можно предусмотреть окно, где можно вывести из обмена - переключив служебный бит.
Вопрос как выявить при работе, раз нет готовых решений в панели. К примеру сделать служебный опрос раз в 5-10 секунд конкретного слейва и при трех-пяти таймаутах опять таки переключить битик и вывесить надпись "потеря связи с устройством таким-то".
Да, можно. Изучайте документацию на использование скриптов в панели и реализуйте, служебные биты есть, обработчик за Вами.
Только не забудьте, что когда слейв у Вас отвалился, то панель уже зависла и три-пять таймаутов уже идут с зависшей наглухо панелью. И скрипты будут крутиться в зависшей панелью.
Раз у Вас огромная система и надо собирать со всех данные и модули могут быть оффлайн, ставьте промежуточный контроллер, на нем опрос и обработка, на панели отображение.
2024-11-22_09-09-48.png
Последний раз редактировалось Николай Суриков; 22.11.2024 в 09:10.