Wbincludes:Inputs Press Events: различия между версиями

Материал из Wiren Board
Строка 25: Строка 25:
Нажатия имеют следующие параметры, которые можно настроить через modbus-регистры или web-интерфейс контроллера:
Нажатия имеют следующие параметры, которые можно настроить через modbus-регистры или web-интерфейс контроллера:
* Время длинного нажатия (Long Press Time) — время в мс, которое разделяет длинные и короткие нажатия. Если нажатие длится больше указанного времени, оно считается длинным, иначе - коротким
* Время длинного нажатия (Long Press Time) — время в мс, которое разделяет длинные и короткие нажатия. Если нажатие длится больше указанного времени, оно считается длинным, иначе - коротким
* Время ожидания второго нажатия (Second Press Waiting Time) — время в мс, которое создает "окно" указанной длительности после завершения короткого нажатия. Если второе нажатие попадет в это окно - нажатие будет считаться двойным, иначе — одиночным
* Время ожидания второго нажатия (Second Press Waiting Time) — время в мс, которое создает «окно» указанной длительности после завершения короткого нажатия. Если второе нажатие попадет в это окно - нажатие будет считаться двойным, иначе — одиночным
* Время подавления дребезга (не показано на диаграмме) — время в мс, в течение которого сигнал на входном клеммнике должен иметь неизменный уровень, после чего он будет зафиксирован и обработан алгоритмом распознавания нажатий
* Время подавления дребезга (не показано на диаграмме) — время в мс, в течение которого сигнал на входном клеммнике должен иметь неизменный уровень, после чего он будет зафиксирован и обработан алгоритмом распознавания нажатий



Версия 11:33, 17 апреля 2023

Диаграмма генерации событий для типов нажатий. Антидребезг здесь отключён
Счётчики нажатий для первого входа в веб-интерфейсе контролера Wiren Board

Модуль может распознавать четыре типа нажатий:

  • короткое,
  • длинное,
  • двойное,
  • короткое, а затем длинное.

Обработку нажатий можно использовать на контроллере, куда по Modbus передаются специальные счётчики для каждого типа нажатий, или в самом устройстве для управления выходами.

Условия определения нажатий:

  • Короткое (Short)
    • нажатие длилось меньше времени длинного нажатия
    • за время ожидания второго нажатия кнопка не была нажата
  • Двойное (Double)
    • было два нажатия, каждое из которых длилось меньше времени длинного нажатия
    • пауза между ними была меньше времени ожидания второго нажатия
  • Длинное (Long)
    • нажатие длилось больше времени длинного нажатия
  • Короткое, а затем длинное (Shortlong)
    • первое нажатие длилось меньше времени длинного нажатия
    • второе — больше, а пауза между ними была меньше времени ожидания второго нажатия

Включить опрос счётчиков нажатий, а также изменить параметры «Время длинного нажатия» и «Время ожидания второго нажатия» можно в настройках.

Нажатия имеют следующие параметры, которые можно настроить через modbus-регистры или web-интерфейс контроллера:

  • Время длинного нажатия (Long Press Time) — время в мс, которое разделяет длинные и короткие нажатия. Если нажатие длится больше указанного времени, оно считается длинным, иначе - коротким
  • Время ожидания второго нажатия (Second Press Waiting Time) — время в мс, которое создает «окно» указанной длительности после завершения короткого нажатия. Если второе нажатие попадет в это окно - нажатие будет считаться двойным, иначе — одиночным
  • Время подавления дребезга (не показано на диаграмме) — время в мс, в течение которого сигнал на входном клеммнике должен иметь неизменный уровень, после чего он будет зафиксирован и обработан алгоритмом распознавания нажатий

Время ожидания второго нажатия

С одной стороны, это позволяет детектировать двойные нажатия, с другой — вносит задержку на детектирование одиночных. Например, при настройке по умолчанию (300 мс) событие одиночного нажатия произойдет через 300 мс после отпускания кнопки. Если вам не нужны двойные и короткие, а затем длинные нажатия, то время ожидания двойного нажатия можно установить на 0 мс. Тогда событие одиночного нажатия будет сразу после отпускания кнопки.

Подавление дребезга

Распознавание нажатий выполняется после подавления дребезга. Это означает, что при настройке по умолчанию (50 мс) любые нажатия длительностью менее 50 мс будут игнорироваться. Точно так же это влияет на скорость реакции при отпускании кнопки: отпускание будет зафиксировано через 50 мс после фактического отпускания кнопки. Время подавления дребезга следует подбирать к конкретной кнопке таким образом, чтобы вносимая задержка была минимальной, но не было ложных срабатываний (например, двойное нажатие вместо одиночного).

Полезное: