Skip to content

Цифровой вход

DigitalInputObject описывает объект с бинарным состоянием. Класс задает тип объекта, набор событий и полей для логики, отображение по умолчанию и структуру настроек, с которой работает экран характеристик.

Настройки

ts
export const DigitalInputSettingsSchema = z.object({
  settings: z.object({
    /** Инвертирует логическое состояние входа в UI и доменной модели. */
    isInverted: z.boolean(),
    /** Задает окно времени, в котором серия нажатий считается последовательностью кликов. */
    clickIntervalMs: z.number(),
    /** Отсекает импульсы короче указанного значения в миллисекундах. */
    thresholdMs: z.number(),
  }),
});

События

У digital-input нет команд (действий) — только события; источником кейса служит состояние входа.

★ — значение по умолчанию (чем предзаполнена форма / что выбрано при создании).

События — когда объект владелец реакции

  • переключение (MSG_STATUS_CHANGED) ★
  • импульс (MSG_CLICK)
  • замыкание (MSG_START_PRESS)
  • размыкание (MSG_STOP_PRESS)

Действия — когда объект выбран целью действия

Условия — когда объект связан в кейсе реакции

  • состояние (State)
    • операторы:
      • «находится в состоянии» (eq) ★
      • «не находится в состоянии» (neq)
    • значение — список:
      • «замкнуто» ★
      • «разомкнуто»
  • значение (Value) ★
    • операторы:
      • «равно» (eq) ★
      • «не равно» (neq)
    • значение — число: ★ 0; минимум 0, максимум 1
  • количество (LastClickCount)
    • операторы:
      • «равно» (eq) ★
      • «не равно» (neq)
      • «больше» (more)
      • «меньше» (less)
    • значение — число: ★ 0; минимум 0

Драйвер-линки

★ — поле по умолчанию в новой связи.

Поля объекта для связи с драйвером

ПолеЧт.Зап.
значение ★
количество
обновить (служебный канал)
авария (служебный канал)

Связи только на чтение у драйверов: SNMP, PING.

Хранение

Сохраняется в таблице project_objects через RepositoryObject (Dexie).

Mentioned In

None yet.