PDA

Просмотр полной версии : Битовый переключатель - работа "по-требованию", как сделать?



In_Da_Cher_A
28.03.2022, 14:28
привет

что-то не могу сообразить, как реализовать.

панель сп315, на экране есть группа переключателей, которая устанавливает тот или иной бит в слейве в 1 (напрямую в плк, если это важно)
при этом возникла необходимость в одном режиме работы оборудования "отключить" переключатель, чтобы нажатие на него не приводило к установке бита в 1. Но чтобы переключатель при этом был видимым (вариант с битом видимости - "не вариант", нужно чтобы кнопка была на экране) и в состоянии "0" (кнопка отжата, фиксации кнопки в нажатом положении не должно быть)

штатными средствами что-то прямого пути реализовать этот функционал - не вижу.
в каком направлении думать?

(если это важно - кнопки управления находятся на отдельном вызываемом окне управления единицей оборудования, не на основном текущем экране)

petera
28.03.2022, 14:57
привет

что-то не могу сообразить, как реализовать.

панель сп315, на экране есть группа переключателей, которая устанавливает тот или иной бит в слейве в 1 (напрямую в плк, если это важно)
при этом возникла необходимость в одном режиме работы оборудования "отключить" переключатель, чтобы нажатие на него не приводило к установке бита в 1. Но чтобы переключатель при этом был видимым (вариант с битом видимости - "не вариант", нужно чтобы кнопка была на экране) и в состоянии "0" (кнопка отжата, фиксации кнопки в нажатом положении не должно быть)

штатными средствами что-то прямого пути реализовать этот функционал - не вижу.
в каком направлении думать?

(если это важно - кнопки управления находятся на отдельном вызываемом окне управления единицей оборудования, не на основном текущем экране)

Используйте пароль на кнопку(переключатель), кнопка нажиматься будет, а эффекта не будет (переключатель нажиматься не будет и эффекта не будет)

ЗЫ,
Если в настройках кнопки выбрать пароль уровень 1, то поведением кнопки можно управлять через бит PSB60 ( PSB60 = 1, переключатель работает/ PSB60 = 0, переключатель не работает)

Аналогично для паролей других уровней использовать биты PSB61, PSB62...PSB68

kondor3000
28.03.2022, 15:04
Если не подойдёт кнопка с паролем, можно наложить две одинаковые кнопки, верхняя с битом видимости, нижняя такая же, но с управлением другим ( свободным) битом, который например при нажатии, просто обнуляет нужный бит.

In_Da_Cher_A
28.03.2022, 16:29
Используйте пароль на кнопку(переключатель), кнопка нажиматься будет, а эффекта не будет (переключатель нажиматься не будет и эффекта не будет)

ЗЫ,
Если в настройках кнопки выбрать пароль уровень 1, то поведением кнопки можно управлять через бит PSB60 ( PSB60 = 1, переключатель работает/ PSB60 = 0, переключатель не работает)

Аналогично для паролей других уровней использовать биты PSB61, PSB62...PSB68конечно это получается "костыль", но в принципе, как я вижу - другого способа нет,
и теперь надо делать управление битами PSB6x....:D а кнопок у меня минимум 2 линии по 2 агрегата по 3 кнопки на каждый - 12...
слишком сложно получается, эти кнопки и так у меня - в одном режиме работают, куда вход уже по паролю.
склоняюсь к тому, чтобы в логике пропускать бит от кнопки через И и отсутствии битов от соседних кнопок.
Пока не выключит другой режим, этот физически не включится. А на экране он будет видеть какой режим включён в данную минуту.
В инструкции придётся прописать, что переход между режимами - только через "нейтраль"
это проще всего
спасибо за подсказку, в другом проекте, где не так наворочено, попробую сделать отключение через пароль

In_Da_Cher_A
28.03.2022, 16:36
можно наложить две одинаковые кнопки, верхняя с битом видимости, нижняя такая жетоже не получается, не хватает
у меня на 1 экране управление 3+3=6 кнопок, которые должны "блокировать" друг друга, даже если разнести на разные экраны - получается 1 кнопка должна "блокировать" две кнопки...слишком много вариантов
кроме как громоздить както через макросы - я пока не вижу способов сделать.