Comments 13
Замена сгоревшего выхода решается программным путём заранее. Нужно сделать свободно определяемое назначение выходов (и входов тоже), и всё - система возвращается в работоспособное состояние без вмешательства в ПО, минимально грамотным местным техником.
вот пример на LD и ST

При таком варианте сложно сопоставлять схему и программу. Можно так все наменять, что потом придется долго разбираться. А это все время ремонта, а в случае который я описал можно вписать комментарий причины замены. Так же этот метод не поможет если в оборудовании стоит два дублирующих датчика (например с двух сторон какой нибудь двигающейся балки) и один из них вышел из строя сделать работу только от одного датчика запараллелить сигналы. И поиск можно начинать непосредственно из этой функции.
не нужно ничего сопоставлять. программа остаётся той же, сигнал датчика присвоится той же переменной, просто по другому каналу. принцип мультиплексора. нужно только некоторый запас по входам.
В смысле запас по входам? Вы же не предлагаете делать 3 резерва на каждый модуль?
Как часто у вас на практике горел только один вход на целом модуле? Я всегда думал что подобное может случится только на относительно современных (младше 20 лет) если на вход 24в подать 220в.
Такое случается. И да, туда может прилететь много всякой бяки, и 220в и иголка, и даже киловольты. Развязка - понятно, что она есть, но вот до нее может выгореть входная цепь. Такое часто встречал не на дискретных входах, а на аналоговых, где термопары и шунты, в идеале бегают милливольты. Кирдык приходит именно аналоговой части, потому как микровольты не развяжешь в большинстве случаев. Времени разбираться зачастую тоже нет, переназначаешь на другой канал, если он есть - и погнали. Если каналов не осталось, в ход могут пойти внешние модули расширения. И вот тут надо пересматривать всю программу, переправляя адреса, которые часто захардкожены.
Почему во втором случае придется менять адрес "дохлого" канала во всей программе? Открываешь таблицу символов, находишь нужный, меняешь его адрес, грузишь в ПЛК.
Это если используешь TIA Portal. В случае с:
Siemens Step7 - начинаешь отрывать все FC и FB, для автоматического обновления адреса. Если же символьное программирование выключено правиш адрес ручками.
Rockwell Studio 5000 - таблицы символов нет. Если поставил вход алиасом адрес правится только перагрузкой ПЛК. Если используешь сразу адрес начинаешь обход программы по крос-референсу.
CodeSYS - таблицы символов нет. Если используешь сразу адрес начинаешь обход программы по крос-референсу.
И это я сейчас самие продвинутые и удобные описал, без учета разных Шнайдеров, Хонивелов, Омронов с Мицубиси.
И никакая это не стардартизация, это применяемые в прикладном ПО приемы кодирования.
Как один маленький функциональный блок влияет на обслуживание промышленного оборудования