1. Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
  2. Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
  3. Не писать свой вопрос в первую попавшуюся тему - вместо этого создать новую тему.
  4. За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения.
  5. Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
  6. Перед тем как что-то написать - читать здесь и здесь, а студентам - обязательно здесь.
  7. Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.

TIA Portal + панель сименс TP700 срабатывание кнопки

ПЛК SIMATIC (S7-200, S7-1200, S7-300, S7-400, S7-1500, ET200)
Ответить
Аватара пользователя

Автор темы
Slava33
здесь недавно
здесь недавно
Сообщения: 37
Зарегистрирован: 06 июн 2016, 08:13
Имя: Иванов Вячеслав Валериевич
Страна: Россия
Благодарил (а): 15 раз

TIA Portal + панель сименс TP700 срабатывание кнопки

Сообщение Slava33 »

Здравствуйте! Вопрос глупый, и возможно даже не важный для меня сейчас, но как сделать так, что б при нажатии кнопки на панели, включалась переменная, а при отпускании - переменная выключалась?! Какие свойства проиписывать? И ещё, почему может быть задержка реагирования контроллера на нажатие кнопки на панели? Панель та же TP700, контроллер Сименс 313С вроде. Т.е. нажал кнопку - механизм сработал, а вдругой раз сработал, но не сразу а с задержкой до 4х секунд. Закономерность не выявил, может много раз сработать мгновенно, а может подтупливать..

Strohmann
осмотрелся
осмотрелся
Сообщения: 141
Зарегистрирован: 08 ноя 2010, 14:03
Имя: Владимир
Страна: Россия
город/регион: Новосибирск
Благодарил (а): 3 раза
Поблагодарили: 4 раза

TIA Portal + панель сименс TP700 срабатывание кнопки

Сообщение Strohmann »

Думаю, изображение проиллюстрирует идею.
В свойствах кнопки нужно использовать события Press и Release, которые вызывают соответственно функции SetBit и ResetBit. Этот бит обрабатывать контроллером как запрос на управление механизмом.
Изображение

POV
корифей
корифей
Сообщения: 743
Зарегистрирован: 12 авг 2008, 11:05
Имя: Патрушев Олег Валерьевич
Страна: Россия
город/регион: г. Н.Новгород
Благодарил (а): 92 раза
Поблагодарили: 141 раз

TIA Portal + панель сименс TP700 срабатывание кнопки

Сообщение POV »

Я бы еще посоветовал использовать функцию SetBitWhileKeyPressed

Strohmann
осмотрелся
осмотрелся
Сообщения: 141
Зарегистрирован: 08 ноя 2010, 14:03
Имя: Владимир
Страна: Россия
город/регион: Новосибирск
Благодарил (а): 3 раза
Поблагодарили: 4 раза

TIA Portal + панель сименс TP700 срабатывание кнопки

Сообщение Strohmann »

Спасибо! Век живи, век учись.
Не знал о такой функции. Действительно, она более удобна и прозрачна для понимания.
Аватара пользователя

Marrenoloth
завсегдатай
завсегдатай
Сообщения: 524
Зарегистрирован: 05 окт 2009, 11:51
Имя: Тихомиров Дмитрий Викторович
Страна: Россия
город/регион: Москва
Благодарил (а): 16 раз
Поблагодарили: 18 раз

TIA Portal + панель сименс TP700 срабатывание кнопки

Сообщение Marrenoloth »

Я, пожалуй, внесу свои 5 копеек. Пришлось тут общаться с системой из такой панели и CPU1200. Задача была - интегрироваться с этой системой. По разным (опустим их) причинам было решено продублировать часть панели в моей WinCC Flex 2008 RT. Так вот, я изрядно попортил карму и разработчикам панели и себе, пока воспроизвел эту функцию во Флексе, с учетом того, что ее в нем нет и с учетом того, что часть событий было организовано по переднему, а часть - по заднему фронту кнопок. Очень бы рекомендовал использовать обычный SetBit, а потом в контроллере его после "отлова" сбрасывать. Карму и себе и тем, кто после вас работать будет, сбережете. Особенно, с учетом того, что в мануале по SetBitWhileKeyPressed прям английским по белому написано: If the PLC supports BOOL tags, do not use this system function. Use the "SetBit" system function instead.

POV
корифей
корифей
Сообщения: 743
Зарегистрирован: 12 авг 2008, 11:05
Имя: Патрушев Олег Валерьевич
Страна: Россия
город/регион: г. Н.Новгород
Благодарил (а): 92 раза
Поблагодарили: 141 раз

TIA Portal + панель сименс TP700 срабатывание кнопки

Сообщение POV »

Странно, WinCCflex2008SP3 RT поддерживает эту функцию, судя по встроенной справке. Я глюков на старых панелях (до TIA) не наблюдал, хотя, надо признать, использую эту функцию не часто (в основном при замене старых панелей, не только Сименс, и переходе от S5 на S7). Комментарий про тип BOOL занятный (перечитал несколько раз - непонятно что хотели этим сказать разработчики), хотя функция как раз и использует тип BOOL, да и трудно представить контроллер без этого типа. Возможно у Вас, Marrenoloth, дело как раз в том, что управление было построено из двух мест?
Аватара пользователя

Marrenoloth
завсегдатай
завсегдатай
Сообщения: 524
Зарегистрирован: 05 окт 2009, 11:51
Имя: Тихомиров Дмитрий Викторович
Страна: Россия
город/регион: Москва
Благодарил (а): 16 раз
Поблагодарили: 18 раз

TIA Portal + панель сименс TP700 срабатывание кнопки

Сообщение Marrenoloth »

Нет. В функцию SetBitWhileKeyPressed _можно_ подставить тег типа BOOL, но она создавалась не под них - у нее явно два параметра: тег и номер бита.

Функция действительно есть, каюсь. Но не смотрел я на нее, видимо, потому, что данные отправлялись из кода, а не просто отображением интерфейса на другой панели. В любом случае, это не отменяет того, что использование ее - не самое хорошее решение. Вам надо ловить бит с негарантированным сроком взведения. SetBit в этом план надежнее - поймали фронт в плк, сбросили бит. Гарантированное единичное включение по циклам контроллера. А SetBitWhileKeyPressed так и будет писать 1 в контроллер, пока палец на кнопке.

А управление, по-факту, из одного места. По программе в плк. Сверху, на Флексе, костыль из скриптов, чтобы гарантированно симулировать нажатие кнопки пальцем оператора. Родной панелью никто не пользуется без крайней необходимости.

POV
корифей
корифей
Сообщения: 743
Зарегистрирован: 12 авг 2008, 11:05
Имя: Патрушев Олег Валерьевич
Страна: Россия
город/регион: г. Н.Новгород
Благодарил (а): 92 раза
Поблагодарили: 141 раз

TIA Portal + панель сименс TP700 срабатывание кнопки

Сообщение POV »

Если под "из кода" имелся в виду скрипт, то в скриптах SetBitWhileKeyPressed как раз использовать нельзя. Там в скриптах еще много чего нельзя из функций использовать.
А так, спасибо за комментарий с акцентом внимания, пожалуй буду еще пореже ее использовать.
Аватара пользователя

Marrenoloth
завсегдатай
завсегдатай
Сообщения: 524
Зарегистрирован: 05 окт 2009, 11:51
Имя: Тихомиров Дмитрий Викторович
Страна: Россия
город/регион: Москва
Благодарил (а): 16 раз
Поблагодарили: 18 раз

TIA Portal + панель сименс TP700 срабатывание кнопки

Сообщение Marrenoloth »

Да я, в общем, так, высказать мнение... Тут на форуме поднимали тему best practice, вот, мне кажется, это немного туда, в ту степь... :)

Михайло
почётный участник форума
почётный участник форума
Сообщения: 3549
Зарегистрирован: 10 ноя 2009, 04:58
Имя: Толмачев Михаил Алексеевич
город/регион: г. Чехов, МО
Благодарил (а): 6 раз
Поблагодарили: 244 раза

TIA Portal + панель сименс TP700 срабатывание кнопки

Сообщение Михайло »

Что-то Вы запутали. Что надо делать-то тогда, если не SetBitWhileKeyPressed?
Аватара пользователя

Marrenoloth
завсегдатай
завсегдатай
Сообщения: 524
Зарегистрирован: 05 окт 2009, 11:51
Имя: Тихомиров Дмитрий Викторович
Страна: Россия
город/регион: Москва
Благодарил (а): 16 раз
Поблагодарили: 18 раз

TIA Portal + панель сименс TP700 срабатывание кнопки

Сообщение Marrenoloth »

SetBit же! И сбрасывать бит в контроллере или в конце цикла каждый цикл контроллера, или слазу после отлавливания фронта. Именно в контроллере. :)

Михайло
почётный участник форума
почётный участник форума
Сообщения: 3549
Зарегистрирован: 10 ноя 2009, 04:58
Имя: Толмачев Михаил Алексеевич
город/регион: г. Чехов, МО
Благодарил (а): 6 раз
Поблагодарили: 244 раза

TIA Portal + панель сименс TP700 срабатывание кнопки

Сообщение Михайло »

Понял, неудобно. Пусть лучше жмут кнопку до упора, пока не сработает. :roll:
Аватара пользователя

Marrenoloth
завсегдатай
завсегдатай
Сообщения: 524
Зарегистрирован: 05 окт 2009, 11:51
Имя: Тихомиров Дмитрий Викторович
Страна: Россия
город/регион: Москва
Благодарил (а): 16 раз
Поблагодарили: 18 раз

TIA Portal + панель сименс TP700 срабатывание кнопки

Сообщение Marrenoloth »

А чем неудобно? Я понимаю, что по-другому и непривычно, но почему неудобно?

Михайло
почётный участник форума
почётный участник форума
Сообщения: 3549
Зарегистрирован: 10 ноя 2009, 04:58
Имя: Толмачев Михаил Алексеевич
город/регион: г. Чехов, МО
Благодарил (а): 6 раз
Поблагодарили: 244 раза

TIA Portal + панель сименс TP700 срабатывание кнопки

Сообщение Михайло »

Неудобно. Нужно делать лишние телодвижения по сбросу.
Аватара пользователя

Marrenoloth
завсегдатай
завсегдатай
Сообщения: 524
Зарегистрирован: 05 окт 2009, 11:51
Имя: Тихомиров Дмитрий Викторович
Страна: Россия
город/регион: Москва
Благодарил (а): 16 раз
Поблагодарили: 18 раз

TIA Portal + панель сименс TP700 срабатывание кнопки

Сообщение Marrenoloth »

Ну да. Нужно. Зато не нужно городить велосипеды с отлавливанием повторных нажатий.

Михайло
почётный участник форума
почётный участник форума
Сообщения: 3549
Зарегистрирован: 10 ноя 2009, 04:58
Имя: Толмачев Михаил Алексеевич
город/регион: г. Чехов, МО
Благодарил (а): 6 раз
Поблагодарили: 244 раза

TIA Portal + панель сименс TP700 срабатывание кнопки

Сообщение Михайло »

Что за повторные нажатия? И что за велосипеды? Вроде не беспокоит. Наверное из-за перегруженного обмена данными?
Аватара пользователя

Marrenoloth
завсегдатай
завсегдатай
Сообщения: 524
Зарегистрирован: 05 окт 2009, 11:51
Имя: Тихомиров Дмитрий Викторович
Страна: Россия
город/регион: Москва
Благодарил (а): 16 раз
Поблагодарили: 18 раз

TIA Portal + панель сименс TP700 срабатывание кнопки

Сообщение Marrenoloth »

Ну на нажатие же должно быть одно действие? А если кнопка отвечает за, к примеру, переход на следующий шаг программы, то без отлова позитивного фронта уже не обойтись. Иначе, пока оператор держит кнопку, программа будет шагать вперед. Вот и приходится прописывать позитивный фронт. Имхо, проще в конце прописать чохом общий сброс всех кнопок, чем для каждой в каждом месте проверки писать отлов фронта.

Михайло
почётный участник форума
почётный участник форума
Сообщения: 3549
Зарегистрирован: 10 ноя 2009, 04:58
Имя: Толмачев Михаил Алексеевич
город/регион: г. Чехов, МО
Благодарил (а): 6 раз
Поблагодарили: 244 раза

TIA Portal + панель сименс TP700 срабатывание кнопки

Сообщение Михайло »

А это... Для меня наоборот лучше ловить фронт, если нужно ловить фронт.

sprohor
здесь недавно
здесь недавно
Сообщения: 53
Зарегистрирован: 05 дек 2016, 16:55
Имя: не форум и был
Поблагодарили: 1 раз
Забанен: Бессрочно

TIA Portal + панель сименс TP700 срабатывание кнопки

Сообщение sprohor »

Marrenoloth сам запутался и других пытается запутать...
Функция Установить_Пока_Нажата_Кнопка очень удобна и использовал её лет... десять (?) для булевых значений и в старых панелях и сейчас в портальных тоже.
А если кнопка отвечает за, к примеру, переход на следующий шаг программы, то без отлова позитивного фронта уже не обойтись. Иначе, пока оператор держит кнопку, программа будет шагать вперед.
Это не проблема кнопок панели, а проблема программиста обработки желаемого действия. Некоторые любят на одну кнопку повесить и включение и выключение, а потом удивляются поведению системы :)

По задержкам реакции на нажатие или отображение - посмотрите установленное время обновления конкретного тэга = по умолчанию для добавляемых тэгов автоматически устанавливается 1 секунда... на новых панелях с Эзернетом устанавливаю 100 миллисекунд.
Аватара пользователя

Marrenoloth
завсегдатай
завсегдатай
Сообщения: 524
Зарегистрирован: 05 окт 2009, 11:51
Имя: Тихомиров Дмитрий Викторович
Страна: Россия
город/регион: Москва
Благодарил (а): 16 раз
Поблагодарили: 18 раз

TIA Portal + панель сименс TP700 срабатывание кнопки

Сообщение Marrenoloth »

Чую холивар "Автосброс против Сет-Ресета управляющих битов"! :ges_clap2:
Аватара пользователя

Marrenoloth
завсегдатай
завсегдатай
Сообщения: 524
Зарегистрирован: 05 окт 2009, 11:51
Имя: Тихомиров Дмитрий Викторович
Страна: Россия
город/регион: Москва
Благодарил (а): 16 раз
Поблагодарили: 18 раз

TIA Portal + панель сименс TP700 срабатывание кнопки

Сообщение Marrenoloth »

sprohor писал(а): Marrenoloth сам запутался и других пытается запутать...
Семен, спасибо, а в каком месте я запутался? (Кстати, у вас ошибка в имени в профиле, если не ошибаюсь.)
Я, кажется, достаточно четко описал возникающие проблемы. И, да, это проблема программиста. Возможно, что того, кто будет дорабатывать программу после вас. Я не навязывал свое мнение, и не говорил, что SetBitWhileKeyPressed не будет работать.

sprohor
здесь недавно
здесь недавно
Сообщения: 53
Зарегистрирован: 05 дек 2016, 16:55
Имя: не форум и был
Поблагодарили: 1 раз
Забанен: Бессрочно

TIA Portal + панель сименс TP700 срабатывание кнопки

Сообщение sprohor »

Как бы на картинке видно, что кнопке можно прописать разные варианты реакции на разные события или их комбинации.
Изображение
Дальше уже дело программиста как обрабатывать события Клика, Начало Нажатия, Начало Отпускания или Состояния_Пока_Нажато...
для логики управления может быть нужен уровень или автоматом будет получаться "фронт" в RS-триггере или на счётном входе счётчика... всё зависит от фантазии программиста.
Аватара пользователя

Marrenoloth
завсегдатай
завсегдатай
Сообщения: 524
Зарегистрирован: 05 окт 2009, 11:51
Имя: Тихомиров Дмитрий Викторович
Страна: Россия
город/регион: Москва
Благодарил (а): 16 раз
Поблагодарили: 18 раз

TIA Portal + панель сименс TP700 срабатывание кнопки

Сообщение Marrenoloth »

А я где-то говорил, что нельзя? Я где-то говорил, что не будет работать? Я высказал свое имхо на тему того, как делать правильнее. Вы почему-то утверждаете, что я запутался, не не уточняете где. Я действительно хочу узнать что я не понимаю и расширить свой кругозор!

Михайло
почётный участник форума
почётный участник форума
Сообщения: 3549
Зарегистрирован: 10 ноя 2009, 04:58
Имя: Толмачев Михаил Алексеевич
город/регион: г. Чехов, МО
Благодарил (а): 6 раз
Поблагодарили: 244 раза

TIA Portal + панель сименс TP700 срабатывание кнопки

Сообщение Михайло »

Оно может плохо работать, если интерфейс "ПЛК-ЧМИ" перегруженный или цикл программы ПЛК слишком большой. Придется быть терпеливее и нажимать кнопочки подольше.
Ну и второй момент: при переходе на другой экран нажатая кнопка останется нажатой. Есть даже настройка такая в WinCC "сбросить состояние кнопок при выходе из экрана". Если состояние кнопки управляется в ПЛК, то такой проблемы нет вообще.
Аватара пользователя

Marrenoloth
завсегдатай
завсегдатай
Сообщения: 524
Зарегистрирован: 05 окт 2009, 11:51
Имя: Тихомиров Дмитрий Викторович
Страна: Россия
город/регион: Москва
Благодарил (а): 16 раз
Поблагодарили: 18 раз

TIA Portal + панель сименс TP700 срабатывание кнопки

Сообщение Marrenoloth »

А вот про идею "одной рукой зажать кнопку, а второй поменять экран" я не подумал, спасибо, буду знать про такие приколы! Придется же будет как-то с ними бороться рано или поздно! :ges_slap:
Ответить

Вернуться в «Simatic TIA Portal»