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

Compare with Current View Page History

« Previous Version 11 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
CASID1uint32

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
TIME1uint32Время события, секунды с UNIX epoch.
SEQ2uint16Циклический сквозной порядковый номер события, для обнаружения потерь
KIND3intРод события: 1-CAS, ...
EVENT4intСобытие
...

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

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

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

EVENT

Value

Description

ZoneRed0Вход в Красную зону
ZoneYellow1Вход в Желтую зону
ZoneGreen2Вход в Зеленую зону
ZoneOut3Выход (пропадание метки из эфира)
ZonePark4Парковка метки (прекращение обнаружения)

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

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

Name

Key

Value Type

Description


EUI

SERIAL

CASID


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

SECTOR_256

7

8

array_uint16[2]

array_uint8[2]

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

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

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

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

  • No labels