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

WinCC 7.x. Определение срабатывания макроса при компиляции

Ответить

Автор темы
winb
освоился
освоился
Сообщения: 248
Зарегистрирован: 31 янв 2017, 08:44
Имя: Маркушин Андрей Геннадьевич
Страна: Россия
город/регион: Нижегородская обл., Выкса
Благодарил (а): 14 раз
Поблагодарили: 59 раз

WinCC 7.x. Определение срабатывания макроса при компиляции

Сообщение winb »

Доброго времени суток.
Имеется следующий вопрос к специалистам по WinCC:
При создании макроса (Global action), во время компиляции происходит срабатывание всех макросов, по крайней мере тех, для которых настроен триггер на изменение значения тега. Собственно, вопрос - можно ли определить внутри макроса, штатно он запустился, или нет.
Заранее спасибо за помощь.
P.S. запуск всех макросов при старте рантайма у меня получилось определить опросом состояния и качества тега.

bei
здесь недавно
здесь недавно
Сообщения: 10
Зарегистрирован: 01 фев 2017, 12:06
Имя: Бакшаев Евгений Игоревич
Поблагодарили: 1 раз

WinCC 7.x. Определение срабатывания макроса при компиляции

Сообщение bei »

Можно проверять триггер(тег) на 0 и выходить из макроса.

Автор темы
winb
освоился
освоился
Сообщения: 248
Зарегистрирован: 31 янв 2017, 08:44
Имя: Маркушин Андрей Геннадьевич
Страна: Россия
город/регион: Нижегородская обл., Выкса
Благодарил (а): 14 раз
Поблагодарили: 59 раз

WinCC 7.x. Определение срабатывания макроса при компиляции

Сообщение winb »

Да, примерно так и делаю для определения срабатывания при запуске рантайма - проверяю качество тега. А во время компиляции какого-либо макроса при работающем рантайме - срабатывание макросов (причем одновременно всех) происходит вне зависимости от состояния тега-триггера.
Использовать вспомогательный внутренний тег, в который в конце макроса записывать значение тега триггера, и при вызове макроса сравнивать его с текущим значением тега триггера... Должно сработать, но больно уж костыль явный выходит.

bei
здесь недавно
здесь недавно
Сообщения: 10
Зарегистрирован: 01 фев 2017, 12:06
Имя: Бакшаев Евгений Игоревич
Поблагодарили: 1 раз

WinCC 7.x. Определение срабатывания макроса при компиляции

Сообщение bei »

Использовать вспомогательный внутренний тег, в который в конце макроса записывать значение тега триггера, и при вызове макроса сравнивать его с текущим значением тега триггера... Должно сработать, но больно уж костыль явный выходит.
Нет. Я имел ввиду в начале макроса проверять значение тега триггера, например сравнивать его с Inital Value. Т.е. определить допустимые значения триггера, при которых необходимо выполнять тело макроса.

Автор темы
winb
освоился
освоился
Сообщения: 248
Зарегистрирован: 31 янв 2017, 08:44
Имя: Маркушин Андрей Геннадьевич
Страна: Россия
город/регион: Нижегородская обл., Выкса
Благодарил (а): 14 раз
Поблагодарили: 59 раз

WinCC 7.x. Определение срабатывания макроса при компиляции

Сообщение winb »

bei писал(а):Нет. Я имел ввиду в начале макроса проверять значение тега триггера, например сравнивать его с Inital Value. Т.е. определить допустимые значения триггера, при которых необходимо выполнять тело макроса.
Я указывал -
проверяю качество тега
. Считайте, что это проверка на инициализацию. При перекомпиляции значение тега не меняется. Что проверять?
Ответить

Вернуться в «WinCC»