Что значит не как в ПР?
Вид для печати
Валенок, в ПР нельзя писать в одну переменную в разных местах программы.
Сброс счётчика можно выполнять прямо на нем, сброс будет только на следующем цикле, все блоки после счётчика получат сигнал.
Вообше нет проблем, всё везде одинаково, везде одни принципы, с принципов Мицубиши влёгкую пересеть на Сименс, а потом на Кодесис, (или другая комбинация начала и продолжения)
Если в этои списке ПР или ZEN появится, то вообще всё пофиг, никаких проблем, всё как в....???
Давайте, пожалуйста, без фантазий, в смысле, я макросы создавал и на форуме выкладывал чтобы писать в переменную из двух и более мест.
Даже, если не ошибаюсь, в менеджере компонентов такие есть!
Вложение 79815
Сергей0308 разница просто в том, что есть зверушки ромиро пр, ну хотя бы плк200. Далеко то ходить на надо.
Х это переменная?
Ей непосредственно присваивается два значения?
Так у вас получился квантовый компьютер, кстати к слову, наши недавно состряпали подобный на 50 кубит: https://www.youtube.com/watch?v=zWmF_jLahAc&t=210s
Типа состояния суперпозиции, в смысле, кубит может находится во всех состояниях(0 и 1) одновременно, здесь ничего необычного нет!
https://habr.com/ru/companies/droider/articles/531708/
Нет, Х присваивается по одному значению в процессе работы программы. В конце цикла будет последнее записанное значение. Например если это булевый выход, где-то его включили, потом по какому-то условию можно выключить. Если условие не выполнено, значит останется включенным (то, что его где-то включило).
Так Вы сказочники, в смысле, в ОЛ так не может быть, в смысле, за один цикл программы не может быть переменной присвоено несколько значений, только одно, не может переменная несколько раз менять значение в течении одного цикла! Собственно цикл это минимальный шаг программы, если так можно выразится.
Ну, почему же?..
На ST в OwenLogic возможна же конструкция
И LD, как текстовый по содержания, хоть и графический по отображению, позволяет подобные вещи.Код:A := B+C;
A := A+D;
Единственно, в разных реализациях встречал варианты:
1) второе присвоение невозможно
2) последнее присвоение и определяет значение переменной по окончанию цикла программы пользователя
3) добавлена специальная катушка OROUT, которая при повторном присвоении той же переменной, по сути выполняет логическое сложение с предыдущим присвоением A := A OR CONDITION
В том и фокус, что это невозможно в FBD ОЛ, но это возможно в FBD того же EKF или CFC в CodeSys. А малюешь что-то по привычке, или берешь пример из ОЛ, а тут бац... :)
И уже как-то писал, есть ПЛК, в теле цикла программы которого, можно даже выход включить
Коллеги, если изначальный вопрос еще актуален, то возможность следить за состоянием выходов напрямую есть у ПР103/205 (как выйдет, будет у ПР225)):
Вложение 79837
Для ПР200/102/100 такой функционал вряд ли будет поддержан.