You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 7 Next »

ПРЕДВАРИТЕЛЬНО

Сообщения передают события, происходящие в системе. События передаются по мере возникновения, при невозможности отправки копятся в ограниченном FIFO буфере. Размер буфера зависит от версии программы (и транспорта).

Сообщение может передаваться:

  • по IP-сети (LTE) на заданные в конфигурации HTTPS-сервер и его контекст. Upload бинарных данных с типом Content-Type: application/cbor
  • через LoRa инфраструктуру на заданный порт

Структура сообщения – последовательность CBOR-элементов:

VERSION(int=3), HEADER, EVENT, EVENT, ...

VERSION иденифицирует дальнейшую структуру, должен быть integer и равен 3. Иначе формат сообщения считать неизвестным.

HEADER идентифицирует отправляющую систему CAS360 и несет общие параметры, EVENT несет информацию об одном событии.

Каждый HEADER и EVENT – CBOR map, то есть, набор полей key:value (key это int).

Идентификаторы полей (key) выбираются в диапазоне -24..23, чтобы занимали 1 байт в CBOR.

Элемент VERSION

Тип integer, значение определяет дальнейшее содержимое. Для нижеописанной структуры значение =3. Чтобы отличать от сенсоров в случае чего.

Поля HEADER

NameKeyValue TypeDescription
CAS_ID1uint32

Unique (hopefully) identifier of sending CAS360 system, generated automatically (linked to tablet PC hardware) 

Looks like arbitrary number (advised is HEX representation to user – to match CAS360 software UI and logs)





Поля EVENT

NameKeyValue TypeDescription
SEQ1uint16Циклический сквозной порядковый номер события, для обнаружения потерь
TIME2uint32Время события, секунды с UNIX epoch.
KIND3intРод события: 1-CAS, ...
EVENT4intСобытие
...

дополнительные поля, специфичные для каждого события EVENT

Дополнительные поля событий KIND=1 (CAS)

События CAS: (предварительно)

EVENT

Value

Description

ZoneRed1Вход в Красную зону
ZoneYellow2Вход в Желтую зону
ZoneGreen3Вход в Зеленую зону
ZoneOut4Выход (пропадание метки из эфира)
ZonePark5Парковка метки (прекращение обнаружения)

Вход в какую-то зону предполагает выход из предыдущей.

Дополнительные поля событий CAS. Множественные Key это альтернативы, придет какой-то один.

Name

Key

Value Type

Description


EUI

SERIAL

CAS_ID


1

2

3

4


uint64

uint32

uint32

<TBD>

Идентификатор метки. 

EUI64 (для меток не-ULUN)

серийный номер (для меток ULUN, пересчитывать в EUI64)

CAS_ID для систем CAS360 (при сближении с другой системой CAS360)

reserved

Основным идентификатором меток (по IEEE 802.12.4) является EUI64. В метках ULUN EUI64 однозначно связан с серийным номером.

CAS_ID не связан с серийными номерами меток и анкеров; используется, потому что система CAS360 в целом не имеет одного меточного серийного номера.

DIST_CM5int16Дистанция до метки, см
BEARER6int (enum)

Носитель метки:  0-Generic, 1-Person, 2-Vehicle, 3-Stationary

Опционально, при отсутствии =Generic

SECTOR_DEG

7

8

array_uint16[2]

array_uint8[2]

Сектор [ from to ], градусы 

Сектор [ from to ], в 1/256 круга (1.40625 градуса)

Отсчет вправо от направления вперед транспортного средства (на экране CAS360 по часовой стрелке от направления вверх)

Опционально, при отсутствии – сектор не определен (полный круг)

  • No labels