Перейти в хранилище документации
Обратиться в техническую поддержку
...
От объекта BACNET поступают события, представленные в таблице ниже. Запуск процедур происходит при возникновении соответствующего события. Формат процедуры событий для объекта BacNet:
Code Block |
---|
OnEvent("BACNET","_id_","_событие_") |
Описание событий от объекта BACNET:
Событие | Описание события |
ERROR | Получено сообщение об ошибке |
EVENT_OCCURES | Подтверждение получения сообщения |
WRITE_OCCURES | Подтверждение выполнения записи |
WRITE_RESULT | Результат выполнения записи |
Формат оператора для описания действий с объектом BacNet:
...
...
DoReact("BACNET","_id_","_команда_" [,"_параметры_"]);
Список команд и параметров для объекта BACNET представлен в таблице.:
Команда – описание команды | Параметры | Описание параметров |
"WRITE" – отправить значение в устройство BACnetBacNet | bacnet_application_tag<> | Тип данных. Возможные значения: NULL = 0 BOOLEAN = 1 UNSIGNED INT = 2 SIGNED INT = 3 REAL = 4 DOUBLE = 5 OCTET STRING = 6 CHARACTER STRING = 7 BIT STRING = 8 |
bacnet_value<> | Значение параметра | |
bacnet_objtype<> | Тип объекта: ANALOG INPUT = 0 ANALOG OUTPUT = 1 ANALOG VALUE = 2 BINARY INPUT = 3 BINARY OUTPUT = 4 BINARY VALUE = 5 | |
bacnet_instance<> | Уникальный глобальный идентификатор устройства BACnet | |
bacnet_property_id<> | Идентификатор свойства | |
bacnet_device_id<> | Идентификатор устройства BACnet в системе | |
EVENT – "EVENT" – отправить сообщение в устройство BACnet | event_type<> | Тип события |
from_state<> | Перевод из состояния | |
to_state<> | Перевод в состояние | |
message_text<> | Название события |
Код примеров приведен на языке JScript – см. Руководство по программированию (JScript).
Code Block |
---|
var msg = CreateMsg();
//bacnet_application_tag
var BACNET_APPLICATION_TAG_NULL = 0;
var BACNET_APPLICATION_TAG_BOOLEAN = 1;
var BACNET_APPLICATION_TAG_UNSIGNED_INT = 2;
var BACNET_APPLICATION_TAG_SIGNED_INT = 3;
var BACNET_APPLICATION_TAG_REAL = 4;
var BACNET_APPLICATION_TAG_DOUBLE = 5;
var BACNET_APPLICATION_TAG_OCTET_STRING = 6;
var BACNET_APPLICATION_TAG_CHARACTER_STRING = 7;
var BACNET_APPLICATION_TAG_BIT_STRING = 8;
//bacnet_objtype
var OBJECT_ANALOG_INPUT = 0;
var OBJECT_ANALOG_OUTPUT = 1;
var OBJECT_ANALOG_VALUE = 2;
var OBJECT_BINARY_INPUT = 3;
var OBJECT_BINARY_OUTPUT = 4;
var OBJECT_BINARY_VALUE = 5;
//bacnet_property_id
var PROP_PRESENT_VALUE = 85;
msg.StringToMsg("BACNETINT|1|WRITE");
msg.SetParam("bacnet_application_tag", BACNET_APPLICATION_TAG_UNSIGNED_INT);
msg.SetParam("bacnet_value",30);
msg.SetParam("bacnet_objtype",OBJECT_ANALOG_VALUE);
msg.SetParam("bacnet_instance",0);
msg.SetParam("bacnet_property_id",PROP_PRESENT_VALUE);
msg.SetParam("bacnet_device_id",12345);
DoReact(msg); |
В случае успешного выполнения скрипта в Отладочном окне появится событие:
...
события |
...
Code Block |
---|
DebugLogString("Script2");
var msg = CreateMsg();
msg.StringToMsg("BACNETINT|1|EVENT");
msg.SetParam("event_type", "0");
msg.SetParam("from_state", "1");
msg.SetParam("to_state", "0");
msg.SetParam("message_text", "test_text1!");
DoReact(msg); |
Если модуль получит событие, то в Отладочном окне будет отображено следующее событие:
Event :
BACNETINT|1|EVENT_OCCURES|sender<Udp:47808>,slave_id<ASUS>,fraction<683>,owner<ASUS>,event_type<EVENT_CHANGE_OF_BITSTRING>,module<bacnetint.vshost.exe>,
message_text<test_text1!>,date<27-11-18>,guid_pk<{6D34BA08-1CF2-E811-8B83-C860008A29F9}>,from_state<EVENT_STATE_FAULT>,
core_global<1>,adr<192.168.0.197:57878>,to_state<EVENT_STATE_NORMAL>,time<11:11:34>,source_guid<bd51a40d-1cf2-e811-8b83-c860008a29f9>
Code Block |
---|
var msg = CreateMsg();
//bacnet_application_tag
var BACNET_APPLICATION_TAG_NULL = 0;
var BACNET_APPLICATION_TAG_BOOLEAN = 1;
var BACNET_APPLICATION_TAG_UNSIGNED_INT = 2;
var BACNET_APPLICATION_TAG_SIGNED_INT = 3;
var BACNET_APPLICATION_TAG_REAL = 4;
var BACNET_APPLICATION_TAG_DOUBLE = 5;
var BACNET_APPLICATION_TAG_OCTET_STRING = 6;
var BACNET_APPLICATION_TAG_CHARACTER_STRING = 7;
var BACNET_APPLICATION_TAG_BIT_STRING = 8;
//bacnet_objtype
var OBJECT_ANALOG_INPUT = 0;
var OBJECT_ANALOG_OUTPUT = 1;
var OBJECT_ANALOG_VALUE = 2;
var OBJECT_BINARY_INPUT = 3;
var OBJECT_BINARY_OUTPUT = 4;
var OBJECT_BINARY_VALUE = 5;
var OBJECT_CHARACTERSTRING_VALUE = 40;
//bacnet_property_id
var PROP_PRESENT_VALUE = 85;
msg.StringToMsg("BACNETINT|1|READ");
msg.SetParam("bacnet_objtype",OBJECT_ANALOG_INPUT);
msg.SetParam("bacnet_instance",0);
msg.SetParam("bacnet_property_id",PROP_PRESENT_VALUE);
msg.SetParam("bacnet_device_id",123456);
DoReact(msg); |
При успешном считывании в Отладочном окне будет отражено событие:
...