BACnet Read Multiply

BACnet ReadPropertyMultiple (BACnet RPM) — это сервис, предоставляемый протоколом BACnet, который позволяет читать значения нескольких свойств различных объектов в одном запросе. Этот сервис является расширением базового сервиса ReadProperty и предназначен для упрощения и ускорения процесса получения данных от устройств BACnet.

image0

Входные данные для RPMTask

image1

  • settings:

    • iface - сетевой интерфейс, через который устройство взаимодействует в сети, берется ip str

    • ip - идентификация устройства в системе Bacnetstr

    • port - идентификация службы на устройстве str

    • period - период сбора информации int **1000*

    • block - int

    • device-id - адрес bacnet сервера int

    • registers - array

CSV файл на вход пример:

Table Title

ip

port

cmd

period

block

device-instance

device-name

object-type

object-instance

property-name

property

description

source

172.18.0.2

47808

rpm

5

50

0

bacserv_demo

2

4

area1

85

Активация ДУ-1

МФК/ARK-5/Активация ДУ-1

172.18.0.2

47808

rpm

5

50

0

bacserv_demo

2

5

area2

85

Активация ДУ-2

МФК/ARK-5/Активация ДУ-2

CSV

ip;port;cmd;period;block;device-instance;device-name;object-type;object-instance;property-name;property;description;source
172.18.0.2;47808;rpm;5;50;0;bacserv_demo;2;4;area1;85;Активация ДУ-1;МФК/ARK-5/Активация ДУ-1
172.18.0.2;47808;rpm;5;50;0;bacserv_demo;2;5;area2;85;Активация ДУ-2;МФК/ARK-5/Активация ДУ-2

Возвращаемые значения

Выходные данные

  • connection_status str

  • timer - общее время запроса (с) double

  • values: - количество зависит от поступающей информации str

    • property-name - наименование устройства

    • description - описание работы устройства

    • source - путь к данным

    • value - значение, полученное с устройства

Пример Json

{
  "connection_status": "Ok",
  "timer": 0.000632512565,
  "values": [
    {
      "property-name": "area1",
      "description": "Активация ДУ-1",
      "source": "МФК/ARK-5/Активация ДУ-1",
      "value": "22",
      "timer": 0.1
    },
    {
      "property-name": "area2",
      "description": "Активация ДУ-2",
      "source": "МФК/ARK-5/Активация ДУ-2",
      "value": "45",
      "timer": 0.15
    }
  ]
}

Пример использования

Cмотрите к BACnetRP, так они очень схожи.