- Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
- Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
- Не писать свой вопрос в первую попавшуюся тему - вместо этого создать новую тему.
- За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения.
- Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
- Перед тем как что-то написать - читать здесь и здесь, а студентам - обязательно здесь.
- Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.
Принцип прохода программы Control Logix
-
- осмотрелся
- Сообщения: 153
- Зарегистрирован: 04 фев 2014, 14:52
- Имя: Исаков Андрей Вячеславович
- Благодарил (а): 2 раза
Принцип прохода программы Control Logix
Здравствуйте! Такой вопрос у меня возник, релейная логика, если я последовательно поставлю два блока MOV первый будет 0 записывать в некий тег, а второй в этот же тег будет писать 1. Если запустить эту программу, то тег будет всегда в "1". Когда программа сканируется она вроде бы должна в "0" переводить тег этот, а уже потом в "1". На деле же этого не происходит (либо происходит, но очень быстро). Разъясните, как вообще программа сканируется? Измененные данные пишутся в какой то буфер, а после прохода уже в теги или сразу в теги, прямо во время сканирования?
-
- освоился
- Сообщения: 233
- Зарегистрирован: 11 апр 2013, 13:22
- Имя: Вишневский Денис
- Благодарил (а): 11 раз
- Поблагодарили: 13 раз
Принцип прохода программы Control Logix
слева на право, сверху вниз, итоговые значения РЛО (результат логической операции) формируются по окончании цикла (скана)
образно - ты входишь в коридор, в начале коридора тебе дали яблоко, а в середине коридора это яблоко отобрали, то выйдешь ты, как ни странно - без яблока, ты разозлился, пошел опять в начало коридора, там по каким то причинам яблок нету, но в середине коридора ты опять встретил типа, который отжал яблоко, а так как программисты ему объяснили что он должен делать наоборот, то он тебе всучит яблоко и выпроводит дальше по коридору и так цикл за циклом, думаю ничего не напутал, правда возможны варианты в виде приоритетов операций и прерываний, но тут доку к контроллеру смотреть надо
образно - ты входишь в коридор, в начале коридора тебе дали яблоко, а в середине коридора это яблоко отобрали, то выйдешь ты, как ни странно - без яблока, ты разозлился, пошел опять в начало коридора, там по каким то причинам яблок нету, но в середине коридора ты опять встретил типа, который отжал яблоко, а так как программисты ему объяснили что он должен делать наоборот, то он тебе всучит яблоко и выпроводит дальше по коридору и так цикл за циклом, думаю ничего не напутал, правда возможны варианты в виде приоритетов операций и прерываний, но тут доку к контроллеру смотреть надо
"- Знаешь, дружище, в чем истинный смысл второго закона термодинамики?
Как ни упирайся, а бардака все больше. И чем серьезнее ты упираешься, тем страшнее неразбериха."(с)
Как ни упирайся, а бардака все больше. И чем серьезнее ты упираешься, тем страшнее неразбериха."(с)
-
- осмотрелся
- Сообщения: 153
- Зарегистрирован: 04 фев 2014, 14:52
- Имя: Исаков Андрей Вячеславович
- Благодарил (а): 2 раза
Принцип прохода программы Control Logix
Сначала слева направо, а потом сверху вниз? То есть построчно, как книгу читать?
-
- освоился
- Сообщения: 233
- Зарегистрирован: 11 апр 2013, 13:22
- Имя: Вишневский Денис
- Благодарил (а): 11 раз
- Поблагодарили: 13 раз
Принцип прохода программы Control Logix
Андрей, давайте сделаем проще, вы кинете скрин программы, и мы его дружненько прочтем, на примере так сказать.
"- Знаешь, дружище, в чем истинный смысл второго закона термодинамики?
Как ни упирайся, а бардака все больше. И чем серьезнее ты упираешься, тем страшнее неразбериха."(с)
Как ни упирайся, а бардака все больше. И чем серьезнее ты упираешься, тем страшнее неразбериха."(с)
-
- почётный участник форума
- Сообщения: 5638
- Зарегистрирован: 07 окт 2011, 09:12
- Имя: Гаско Вячеслав Эриевич
- Страна: Россия
- город/регион: Рязань
- Благодарил (а): 602 раза
- Поблагодарили: 759 раз
Принцип прохода программы Control Logix
Внутри одной и той же рутины теги изменяют свое значение сразу же, по мере исполнения программы. Прикол в том, что связь с процессором со стороны компа происходит абсолютно асинхронно. Поэтому кратковременные изменения тегов могут то фиксироваться на ПК, то не замечаются им.
---------------------------------------------------
«У человека в душе дыра размером с Бога, и каждый заполняет её как может.» (Жан-Поль Сартр)
"Ту пустоту, которая остаётся в душе, когда в ней нет Бога, и весь мир не может заполнить." (святитель Николай Сербский)
«У человека в душе дыра размером с Бога, и каждый заполняет её как может.» (Жан-Поль Сартр)
"Ту пустоту, которая остаётся в душе, когда в ней нет Бога, и весь мир не может заполнить." (святитель Николай Сербский)
-
- осмотрелся
- Сообщения: 153
- Зарегистрирован: 04 фев 2014, 14:52
- Имя: Исаков Андрей Вячеславович
- Благодарил (а): 2 раза
Принцип прохода программы Control Logix
Ну вот, прикрепил этот участок программы. Есть тег Status, который принимает целочисленное значение в зависимости от того, какой аларм сработал. Его, естественно нужно обнулять, если значение вышло из аларма. То есть, по сути у меня моргание будет в данном случае?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
-
- почётный участник форума
- Сообщения: 5638
- Зарегистрирован: 07 окт 2011, 09:12
- Имя: Гаско Вячеслав Эриевич
- Страна: Россия
- город/регион: Рязань
- Благодарил (а): 602 раза
- Поблагодарили: 759 раз
Принцип прохода программы Control Logix
Да, будет моргание.
Чтобы этого избежать, строкой ниже скопируйте MOV-ом сформированное значение этого тега в другой, и его уже обабатывайте. Второй тег мельтешить уже не будет. Сбрасывать есть смысл первый, промежуточгный тег-заготовку.
Чтобы этого избежать, строкой ниже скопируйте MOV-ом сформированное значение этого тега в другой, и его уже обабатывайте. Второй тег мельтешить уже не будет. Сбрасывать есть смысл первый, промежуточгный тег-заготовку.
---------------------------------------------------
«У человека в душе дыра размером с Бога, и каждый заполняет её как может.» (Жан-Поль Сартр)
"Ту пустоту, которая остаётся в душе, когда в ней нет Бога, и весь мир не может заполнить." (святитель Николай Сербский)
«У человека в душе дыра размером с Бога, и каждый заполняет её как может.» (Жан-Поль Сартр)
"Ту пустоту, которая остаётся в душе, когда в ней нет Бога, и весь мир не может заполнить." (святитель Николай Сербский)
-
- осмотрелся
- Сообщения: 153
- Зарегистрирован: 04 фев 2014, 14:52
- Имя: Исаков Андрей Вячеславович
- Благодарил (а): 2 раза
Принцип прохода программы Control Logix
Сделал вот так, теперь моргать ничего не будет?
download/file.php?mode=view&id=4934
download/file.php?mode=view&id=4934
У вас нет необходимых прав для просмотра вложений в этом сообщении.
-
- почётный участник форума
- Сообщения: 5638
- Зарегистрирован: 07 окт 2011, 09:12
- Имя: Гаско Вячеслав Эриевич
- Страна: Россия
- город/регион: Рязань
- Благодарил (а): 602 раза
- Поблагодарили: 759 раз
Принцип прохода программы Control Logix
Вынесите последний оператор Mov в отдельную "ступеньку", иначе, при невыполнении логических условий, у Вас ноль из временного тега в окончательный переписываться не будет. Тот так и останется с последним значением.
---------------------------------------------------
«У человека в душе дыра размером с Бога, и каждый заполняет её как может.» (Жан-Поль Сартр)
"Ту пустоту, которая остаётся в душе, когда в ней нет Бога, и весь мир не может заполнить." (святитель Николай Сербский)
«У человека в душе дыра размером с Бога, и каждый заполняет её как может.» (Жан-Поль Сартр)
"Ту пустоту, которая остаётся в душе, когда в ней нет Бога, и весь мир не может заполнить." (святитель Николай Сербский)
-
- осмотрелся
- Сообщения: 153
- Зарегистрирован: 04 фев 2014, 14:52
- Имя: Исаков Андрей Вячеславович
- Благодарил (а): 2 раза
Принцип прохода программы Control Logix
Что значит эта фраза? Смотрел, думал, ничего не понял. Покатал этот кусок в эмуляторе, все нормально обновляется и переписывается. Поясните подробнее пожалуйста.
-
- почётный участник форума
- Сообщения: 5638
- Зарегистрирован: 07 окт 2011, 09:12
- Имя: Гаско Вячеслав Эриевич
- Страна: Россия
- город/регион: Рязань
- Благодарил (а): 602 раза
- Поблагодарили: 759 раз
Принцип прохода программы Control Logix
У Вас есть два оператора -[\]-
Если хоть один из них не выполняется, то выходной тег не обновится.
Если хоть один из них не выполняется, то выходной тег не обновится.
---------------------------------------------------
«У человека в душе дыра размером с Бога, и каждый заполняет её как может.» (Жан-Поль Сартр)
"Ту пустоту, которая остаётся в душе, когда в ней нет Бога, и весь мир не может заполнить." (святитель Николай Сербский)
«У человека в душе дыра размером с Бога, и каждый заполняет её как может.» (Жан-Поль Сартр)
"Ту пустоту, которая остаётся в душе, когда в ней нет Бога, и весь мир не может заполнить." (святитель Николай Сербский)
-
- осмотрелся
- Сообщения: 153
- Зарегистрирован: 04 фев 2014, 14:52
- Имя: Исаков Андрей Вячеславович
- Благодарил (а): 2 раза