API - Список регистров

Материал из WebHMI
Перейти к: навигация, поиск

Для получения списка всех регистров необходимо выполнить GET-запрос на URL вида http://192.168.1.1/api/registers.

Для получения информации о конкретном регистре необходимо выполнить GET-запрос на URL вида http://192.168.1.1/api/registers/1. Здесь 1 - это ID нужного регистра.

В заголовках запроса необходимо передать API key. Например:

X-WH-APIKEY: F3C74230818DA487BB2017CE5D0290F4DABCAFD7

Также в заголовках необходимо указать желаемый формат обмена данными. Сейчас поддерживается работа только с форматом JSON.

Accept: application/json
Content-Type: application/json

Пример запроса списка регистров:

URL: http://192.168.1.1/api/registers
Method: GET

Заголовки:

Accept: application/json
Content-Type: application/json
Accept-Encoding: gzip, deflate, sdch
X-WH-APIKEY:F3C74230818DA487BB2017CE5D0290F4DABCAFD7

Пример ответа:

[
  {
    "id": "1",
    "plcid": "2",
    "title": "Идет упаковка",
    "addr": "M1.0",
    "modbusAddr": "",
    "type": "0",
    "dictid": "0",
    "value_format": "0",
    "multiplicator": "",
    "shift": "",
    "save_to_log": "0",
    "measureUnits": "",
    "has_normal": "0",
    "normal_regid": "0",
    "normal_regid2": "0",
    "normal_dynamic_value": "0",
    "normal_binary_value": "",
    "normal_binary_text": "",
    "normal_color": "#33d356",
    "normal_min_regid": "-1",
    "normal_min_delta": "",
    "normal_max_regid": "-1",
    "normal_max_delta": "",
    "normal_min_val": "",
    "normal_max_val": "",
    "has_disabled": "0",
    "disabled_regid": "0",
    "disabled_regid2": "0",
    "disabled_dynamic_value": "0",
    "disabled_binary_value": "",
    "disabled_binary_text": "",
    "disabled_color": "#cccccc",
    "disabled_min_regid": "-1",
    "disabled_min_delta": "",
    "disabled_max_regid": "-1",
    "disabled_max_delta": "",
    "disabled_min_val": "",
    "disabled_max_val": "",
    "has_warning": "0",
    "warning_regid": "0",
    "warning_regid2": "0",
    "warning_dynamic_value": "0",
    "warning_binary_value": "",
    "warning_binary_text": "",
    "warning_color": "#f0b417",
    "warning_min_regid": "-1",
    "warning_min_delta": "",
    "warning_max_regid": "-1",
    "warning_max_delta": "",
    "warning_min_val": "",
    "warning_max_val": "",
    "has_alert": "0",
    "alert_regid": "0",
    "alert_regid2": "0",
    "alert_dynamic_value": "0",
    "alert_binary_value": "",
    "alert_binary_text": "",
    "alert_color": "#ee434d",
    "alert_min_regid": "-1",
    "alert_min_delta": "",
    "alert_max_regid": "-1",
    "alert_max_delta": "",
    "alert_min_val": "",
    "alert_max_val": "",
    "timeformat": "Y-m-d H:i:s",
    "log_tolerance": "",
    "precision_digits": "",
    "min_log_interval": "",
    "max_log_interval": "",
    "max_graph_interval": "",
    "max_allowed_value": "",
    "min_allowed_value": "",
    "rw_mode": "",
    "min_reasonable_value": "",
    "max_reasonable_value": "",
    "save_graph_data": "0",
    "graph_interval": "1",
    "graph_color": "#ff0000",
    "disabled": "0",
    "nocloud": "",
    "delta": "0",
    "delay": "0"
  },
  {
    "id": "2",
    "plcid": "2",
    "title": "Рецепт",
    "addr": "VW100",
    "modbusAddr": "",
    "type": "2",
    "dictid": "1",
    "value_format": "0",
    "multiplicator": "",
    "shift": "",
    "save_to_log": "0",
    "measureUnits": "",
    "has_normal": "0",
    "normal_regid": "0",
    "normal_regid2": "0",
    "normal_dynamic_value": "0",
    "normal_binary_value": "",
    "normal_binary_text": "",
    "normal_color": "#32d355",
    "normal_min_regid": "-1",
    "normal_min_delta": "",
    "normal_max_regid": "-1",
    "normal_max_delta": "",
    "normal_min_val": "",
    "normal_max_val": "",
    "has_disabled": "0",
    "disabled_regid": "0",
    "disabled_regid2": "0",
    "disabled_dynamic_value": "0",
    "disabled_binary_value": "",
    "disabled_binary_text": "",
    "disabled_color": "#cccccc",
    "disabled_min_regid": "-1",
    "disabled_min_delta": "",
    "disabled_max_regid": "-1",
    "disabled_max_delta": "",
    "disabled_min_val": "",
    "disabled_max_val": "",
    "has_warning": "0",
    "warning_regid": "0",
    "warning_regid2": "0",
    "warning_dynamic_value": "0",
    "warning_binary_value": "",
    "warning_binary_text": "",
    "warning_color": "#f0b416",
    "warning_min_regid": "-1",
    "warning_min_delta": "",
    "warning_max_regid": "-1",
    "warning_max_delta": "",
    "warning_min_val": "",
    "warning_max_val": "",
    "has_alert": "0",
    "alert_regid": "0",
    "alert_regid2": "0",
    "alert_dynamic_value": "0",
    "alert_binary_value": "",
    "alert_binary_text": "",
    "alert_color": "#ee434d",
    "alert_min_regid": "-1",
    "alert_min_delta": "",
    "alert_max_regid": "-1",
    "alert_max_delta": "",
    "alert_min_val": "",
    "alert_max_val": "",
    "timeformat": "Y-m-d H:i:s",
    "log_tolerance": "",
    "precision_digits": "",
    "min_log_interval": "",
    "max_log_interval": "",
    "max_graph_interval": "",
    "max_allowed_value": "",
    "min_allowed_value": "",
    "rw_mode": "",
    "min_reasonable_value": "",
    "max_reasonable_value": "",
    "save_graph_data": "0",
    "graph_interval": "1",
    "graph_color": "#ff0000",
    "disabled": "0",
    "nocloud": "",
    "delta": "0",
    "delay": "0"
  },
  {
    "id": "3",
    "plcid": "2",
    "title": "Счетчик упаковок",
    "addr": "С1",
    "modbusAddr": "",
    "type": "3",
    "dictid": "0",
    "value_format": "0",
    "multiplicator": "",
    "shift": "",
    "save_to_log": "0",
    "measureUnits": "",
    "has_normal": "0",
    "normal_regid": "0",
    "normal_regid2": "0",
    "normal_dynamic_value": "0",
    "normal_binary_value": "",
    "normal_binary_text": "",
    "normal_color": "#33d356",
    "normal_min_regid": "-1",
    "normal_min_delta": "",
    "normal_max_regid": "-1",
    "normal_max_delta": "",
    "normal_min_val": "",
    "normal_max_val": "",
    "has_disabled": "0",
    "disabled_regid": "0",
    "disabled_regid2": "0",
    "disabled_dynamic_value": "0",
    "disabled_binary_value": "",
    "disabled_binary_text": "",
    "disabled_color": "#cccccc",
    "disabled_min_regid": "-1",
    "disabled_min_delta": "",
    "disabled_max_regid": "-1",
    "disabled_max_delta": "",
    "disabled_min_val": "",
    "disabled_max_val": "",
    "has_warning": "0",
    "warning_regid": "0",
    "warning_regid2": "0",
    "warning_dynamic_value": "0",
    "warning_binary_value": "",
    "warning_binary_text": "",
    "warning_color": "#f0b417",
    "warning_min_regid": "-1",
    "warning_min_delta": "",
    "warning_max_regid": "-1",
    "warning_max_delta": "",
    "warning_min_val": "",
    "warning_max_val": "",
    "has_alert": "0",
    "alert_regid": "0",
    "alert_regid2": "0",
    "alert_dynamic_value": "0",
    "alert_binary_value": "",
    "alert_binary_text": "",
    "alert_color": "#ee434d",
    "alert_min_regid": "-1",
    "alert_min_delta": "",
    "alert_max_regid": "-1",
    "alert_max_delta": "",
    "alert_min_val": "",
    "alert_max_val": "",
    "timeformat": "Y-m-d H:i:s",
    "log_tolerance": "",
    "precision_digits": "",
    "min_log_interval": "",
    "max_log_interval": "",
    "max_graph_interval": "",
    "max_allowed_value": "",
    "min_allowed_value": "",
    "rw_mode": "",
    "min_reasonable_value": "",
    "max_reasonable_value": "",
    "save_graph_data": "0",
    "graph_interval": "1",
    "graph_color": "#ff0000",
    "disabled": "0",
    "nocloud": "",
    "delta": "0",
    "delay": "0"
  }
]

Пример запроса информации о регистре номер 2:

URL: http://192.168.1.1/api/registers/2
Method: GET

Заголовки:

Accept: application/json
Content-Type: application/json
Accept-Encoding: gzip, deflate, sdch
X-WH-APIKEY:F3C74230818DA487BB2017CE5D0290F4DABCAFD7

Пример ответа:

{
  "id": "2",
  "plcid": "2",
  "title": "Рецепт",
  "addr": "VW100",
  "modbusAddr": "",
  "type": "2",
  "dictid": "1",
  "value_format": "0",
  "multiplicator": "",
  "shift": "",
  "save_to_log": "0",
  "measureUnits": "",
  "has_normal": "0",
  "normal_regid": "0",
  "normal_regid2": "0",
  "normal_dynamic_value": "0",
  "normal_binary_value": "",
  "normal_binary_text": "",
  "normal_color": "#32d355",
  "normal_min_regid": "-1",
  "normal_min_delta": "",
  "normal_max_regid": "-1",
  "normal_max_delta": "",
  "normal_min_val": "",
  "normal_max_val": "",
  "has_disabled": "0",
  "disabled_regid": "0",
  "disabled_regid2": "0",
  "disabled_dynamic_value": "0",
  "disabled_binary_value": "",
  "disabled_binary_text": "",
  "disabled_color": "#cccccc",
  "disabled_min_regid": "-1",
  "disabled_min_delta": "",
  "disabled_max_regid": "-1",
  "disabled_max_delta": "",
  "disabled_min_val": "",
  "disabled_max_val": "",
  "has_warning": "0",
  "warning_regid": "0",
  "warning_regid2": "0",
  "warning_dynamic_value": "0",
  "warning_binary_value": "",
  "warning_binary_text": "",
  "warning_color": "#f0b416",
  "warning_min_regid": "-1",
  "warning_min_delta": "",
  "warning_max_regid": "-1",
  "warning_max_delta": "",
  "warning_min_val": "",
  "warning_max_val": "",
  "has_alert": "0",
  "alert_regid": "0",
  "alert_regid2": "0",
  "alert_dynamic_value": "0",
  "alert_binary_value": "",
  "alert_binary_text": "",
  "alert_color": "#ee434d",
  "alert_min_regid": "-1",
  "alert_min_delta": "",
  "alert_max_regid": "-1",
  "alert_max_delta": "",
  "alert_min_val": "",
  "alert_max_val": "",
  "timeformat": "Y-m-d H:i:s",
  "log_tolerance": "",
  "precision_digits": "",
  "min_log_interval": "",
  "max_log_interval": "",
  "max_graph_interval": "",
  "max_allowed_value": "",
  "min_allowed_value": "",
  "rw_mode": "",
  "min_reasonable_value": "",
  "max_reasonable_value": "",
  "save_graph_data": "0",
  "graph_interval": "1",
  "graph_color": "#ff0000",
  "disabled": "0",
  "nocloud": "",
  "delta": "0",
  "delay": "0"
}

Атрибуты регистров:

  • id int Уникальный идентификатор регистра
  • title string Название регистра
  • plcid string Идентификатор соединения по которому будеи происходить работа с этим регистром
  • addr string Адрес регистра
  • modbusAddr string Адрес регистра для встроенного Modbus TCP сервера
  • type int Идентификатор типа данных (см. ниже)
  • value_format int Идентификатор формата данных (см. ниже)
  • dictid int Идентификатор словаря
  • multiplicator double Множитель для математических преобразования значения
  • shift double Постоянная для математических преобразования значения
  • save_to_log int 0 = не сохранять значения в лог, 1 = пероидически сохранять значения в лог
  • measureUnits string Единицы измерения (метры, вольты и т.п.)
  • has_normal int 1 = регистр имеет номарльное состояние, 0 = нормального состояния нет
  • normal_regid int Идентификатор регистра для сравнения (для регистров типа бит)
  • normal_regid2 int Идентификатор второго регистра для сравнения (для регистров типа бит)
  • normal_dynamic_value int 1 = сравнивать значение регистра со значениями из других регистров, 0 = сравнивать значение регистра с константами
  • normal_binary_value int Бинарное значение (1 или 0) которое включает нормальное состояние регистра
  • normal_binary_text string Текст для отображения нормального состояния
  • normal_color string Цвет нормального состояния
  • normal_min_regid int Идентификатор регистра с минимальным значеним при диначимеском сравнении
  • normal_min_delta string Дельта с минимальным значеним при диначимеском сравнении
  • normal_max_regid int Идентификатор регистра с максимальным значеним при диначимеском сравнении
  • normal_max_delta string Дельта с максимальным значеним при диначимеском сравнении
  • normal_min_val double Минимальное значение при обычном сравнении
  • normal_max_val double Максимальное значение при обычном сравнении
  • has_disabled int 1 = регистр имеет выключенное состояние, 0 = выключенного состояния нет
  • disabled_regid int Идентификатор регистра для сравнения (для регистров типа бит)
  • disabled_regid2 int Идентификатор второго регистра для сравнения (для регистров типа бит)
  • disabled_dynamic_value int 1 = сравнивать значение регистра со значениями из других регистров, 0 = сравнивать значение регистра с константами
  • disabled_binary_value int Бинарное значение (1 или 0) которое включает выключенное состояние регистра
  • disabled_binary_text string Текст для отображения выключенного состояния
  • disabled_color string Цвет выключенного состояния
  • disabled_min_regid int Идентификатор регистра с минимальным значеним при диначимеском сравнении
  • disabled_min_delta string Дельта с минимальным значеним при диначимеском сравнении
  • disabled_max_regid int Идентификатор регистра с максимальным значеним при диначимеском сравнении
  • disabled_max_delta string Дельта с максимальным значеним при диначимеском сравнении
  • disabled_min_val double Минимальное значение при обычном сравнении
  • disabled_max_val double Максимальное значение при обычном сравнении
  • has_warning int 1 = регистр имеет состояние предупреждения, 0 = состояния предупреждения нет
  • warning_regid int Идентификатор регистра для сравнения (для регистров типа бит)
  • warning_regid2 int Идентификатор второго регистра для сравнения (для регистров типа бит)
  • warning_dynamic_value int 1 = сравнивать значение регистра со значениями из других регистров, 0 = сравнивать значение регистра с константами
  • warning_binary_value int Бинарное значение (1 или 0) которое включает состояние предупреждения регистра
  • warning_binary_text string Текст для отображения состояния предупреждения
  • warning_color string Цвет состояния предупреждения
  • warning_min_regid int Идентификатор регистра с минимальным значеним при диначимеском сравнении
  • warning_min_delta string Дельта с минимальным значеним при диначимеском сравнении
  • warning_max_regid int Идентификатор регистра с максимальным значеним при диначимеском сравнении
  • warning_max_delta string Дельта с максимальным значеним при диначимеском сравнении
  • warning_min_val double Минимальное значение при обычном сравнении
  • warning_max_val double Максимальное значение при обычном сравнении
  • has_alert int 1 = регистр имеет состояние тревоги, 0 = состояния тревоги нет
  • alert_regid int Идентификатор регистра для сравнения (для регистров типа бит)
  • alert_regid2 int Идентификатор второго регистра для сравнения (для регистров типа бит)
  • alert_dynamic_value int 1 = сравнивать значение регистра со значениями из других регистров, 0 = сравнивать значение регистра с константами
  • alert_binary_value int Бинарное значение (1 или 0) которое включает состояние тревоги регистра
  • alert_binary_text string Текст для отображения состояния тревоги
  • alert_color string Цвет состояния тревоги
  • alert_min_regid int Идентификатор регистра с минимальным значеним при диначимеском сравнении
  • alert_min_delta string Дельта с минимальным значеним при диначимеском сравнении
  • alert_max_regid int Идентификатор регистра с максимальным значеним при диначимеском сравнении
  • alert_max_delta string Дельта с максимальным значеним при диначимеском сравнении
  • alert_min_val double Минимальное значение при обычном сравнении
  • alert_max_val double Максимальное значение при обычном сравнении
  • timeformat string Формат вывода даты и времени для регистров с типом UnixTime
  • log_tolerance double Максимальнон пороговое изменение значения регистра при при превышении которого значение будет записано в лог
  • precision_digits int Количество знаков после запятой для дробных чисел
  • min_log_interval int Записывать значения в лог не реже чем каждые X секунд
  • max_log_interval int Записывать значения в лог не чаще чем каждые X секунд
  • max_graph_interval int Соединять точки на графие если нет данных между ними менее чем Х секунд
  • max_allowed_value double Максимально допустимое значение которое разрешено вводить оператору
  • min_allowed_value double Минимально допустимое значение которое разрешено вводить оператору
  • rw_mode string Не используется
  • min_reasonable_value double Минимально достоверное значение. При выходе за этот рубеж значение регистра будет сброшено в ноль.
  • max_reasonable_value double Максимально достоверное значение. При выходе за этот рубеж значение регистра будет сброшено в ноль
  • save_graph_data int Сохранять данные для построения графиков.
  • graph_interval int Точность данных для графиков. 0 = максимальная точность (в т.ч. брать данные из лога), 1 = каждую минуту, 2 = каждые 2 минуты, 5 = каждые 5 минут, 15 = каждые 15 минут, 60 = каждые 60 минут
  • graph_color string Цвет линии на графике
  • disabled int 0 = регистр обрабатывается, 1 = регистр отключен
  • nocloud int 0 = отправлять данные для графиков в облако, 1 = не отправлять данные графиков в облако
  • delta int 0 = нормальный режим чтения, 1 = читать разницу между текущим и предыдущим значением, 2 = разница между текущим и предыдущим значением разделенная на время прошедшее между опросами этих значений (моментальная скорость)
  • delay int Период опроса регистра в миллисекундах. Не может быть меньше чем системная скорость опроса. 0 = скорость по умолчанию*.

Идентификаторы типов данных:
0 = Bit
1 = Byte
2 = Word
3 = Double Word
4 = Unix Time


Идентификаторы форматов хранения данных:
0 = Unsigned, Integer
1 = Signed, Integer
2 = Unsigned, Fixed Point Float (0 ... +1)
3 = Signed, Fixed Point Float (-1 ... +1)
4 = Two's complement
5 = Signed, Floating Point, 32 Bits, IEEE 754
6 = Signed, Floating Point, 24 Bits
7 = Signed, Floating Point, 32 Bits, IEEE 754, Reverse Word Order