Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?

Официальный форум Simple-Scada.

Автор Тема: Кнопки и действия оператора  (Прочитано 11129 раз)

Серега

  • Старожил
  • ****
  • Сообщений: 285
    • Просмотр профиля
Кнопки и действия оператора
« : 11 Декабря 2025, 14:39:35 »
Добрый день!
Словили интересную ситуацию.
Есть 3 кнопки. Старт, Пауза и Стоп. Привязаны к разным битам переменной слова команд.
Потом было решено для безопасности использовать дополнительно другой протокол.
И для кнопки Стоп было решено убрать привязку к переменной и биту, перенести это в скрипт и добавить присвоение по новому протоколу.
Пример скрипта:
Код
dwCMD_Set.Value := SetBit(dwCMD_Set.Value, 20, True);
dwCmd_TP_Set.Value := SetBit(dwCmd_TP_Set.Value, 20, True);
И при анализе сообщений не увидели записи о том, что была нажата кнопка Стоп . Но на графиках четко видно изменения соответствующих переменных.
Наши предположения:
1. Для внесения сообщения в группу "Действия оператора" кнопка должна быть привязана к переменной. При этом привязка к доп. переменной не считается.
2. Если привязать кнопку Стоп к переменной dwCMD_Set и убрать из скрипта, то по идее этого достаточно для появления сообщений в группе.
Запланированы работы по изменению боевого проекта на следующей недели и хотелось бы исправить данную ситуацию тем либо другим способом.
Как бы вопрос почему при нажатии кнопки не привязанной к переменной нет сообщения в группе действия оператора, мы как бы кнопку нажали.
Можете дать пояснения верны ли наши предположения?

Simple_Scada

  • Администратор
  • *****
  • Сообщений: 1393
    • Просмотр профиля
Re: Кнопки и действия оператора
« Ответ #1 : 11 Декабря 2025, 17:40:17 »
Здравствуйте.

Сообщения о действиях оператора формируются при использовании штатного функционала работы кнопок (т.е. при изменении значения основной переменной по нажатию на кнопку). В остальных случаях добавлять сообщение в список действий оператора можно через скрипты, используя процедуру "AddActionMessage".