Перейти к содержанию

RapidaDI🔗

Чтение данных, получаемых от модуля "Digital Input" - модуля цифровых входов, значения на входах принимают значения - 'true/false'.

Топик чтения🔗

Spread/{Topic_Type}/{Project_ID}/Hardware/RapidaDI/{MANAGER_ID}/RapidaDIChannel/{PROVIDER_ID}/{FUnit}{Property}

Параметры топика🔗

Параметр Значение
Topic_Type Значение State — топик информации (статуса). Используется в запросах подписки (subscribe) для опроса модуля.
Project_ID ID проекта AWADA.
MANAGER_ID ID менеджера (модуля цифровых входов).
PROVIDER_ID ID провайдера RapidaDIChannel - объекта, реализующего интерфейс работы с входами модуля цифровых дискретных входов.
Property Свойство, текущий статус которого необходимо узнать. Возможные параметры:
  • channel — номер входа [1..8].
  • engineryUnits — список объектов-параметров (функциональных единиц).
    • name — имя параметра (функциональной единицы - FUnit).
    • reader — объект для наделения параметра функционалом State (чтение).
      • conversion - функция преобразования значения на входе [true, false] в некоторое значение для публикации. Имеет вид выражения lambda функции python, относительно переменной x, принимающей значения на выбранном входе модуля.

Примеры значений свойства 'conversion'🔗

  "int(x)" - преобразование значения в целое (0/1).
  "'On' if x else 'Off'" - условное преобразование в строки.
  "{True: 'On', False: 'Off'}[x]" - выбор соответствующего строкового значения из словаря.
  "{True: 10, False: 20}[x]" - выбор соответствующего целого значения.

Особенности работы:🔗

При некорректной функции преобразования 'conversion' или при ошибке во время преобразования, состояние будет проигнорировано и значение в брокере не изменится. В логе менеджера будет ошибка "Convertion error".