蓝牙AOA定位网关上报数据格式
金桔蓝牙AOA定位网关一般通过金桔的ACServer来上报数据,通过Acserver的数据整合和滤波可以得到精度和稳定性更高的数据源。
金桔Acserver的AOA定位数据推送格式
Aoa数据推送主要根据Acserver推送接口,支持Http推送(post方法),socket(udp,tcp),mqtt,websocket等接口,以json的格式形式推送,使用户平台对接更简单。
这里是AOA网关获取AOA标签的坐标并推送的信息。
{
"Gateway":"10000060",
"NodeId":"00000000",
"Group":"group1",
"SystemId":"10990145",
"Type":"AOA_data",
"conx":-0.8987940462991669,
"ka":206,
"ke":42,
"mac":"19,00,00,00,60,C2",
"siny":-0.43837114678907746,
"tanh":0.9004040442978399,
"x":-0.5547684731158157,
"y":-0.27453919672639904
}
参数说明:
参数 | 类型 | 说明 |
---|---|---|
Gateway | String | AOA网关的ID,该数据由哪个网关上传 |
NodeId | String | 标签的ID |
SystemId | String | Acserver的ID,如果有多个Acserver部署,该ID标识由哪个Acserver上传 |
Type | String | 消息类型,该字段固定 |
mac | String | 标签的蓝牙mac地址 |
Ka | Int | AOA网关取得的方位角的原始值。 |
Ke | Int | AOA网关取得的俯仰角的原始值。 |
conx | Float | 单位1米处计算的方位X原始值。 |
siny | Float | 单位1米处计算的方位Y原始值. |
tanh | Float | 高度1米处计算距离网关的距离 |
x | Float | 最终计算的坐标X |
y | Float | 最终计算的坐标Y |
网关推送的原始数据
如果客户平台想跨过ACServer直接从网关取得原始数据,自己计算方位,金桔AOA网关也是支持的,只要客户端平台打开UDP的10352端口,客户将可以获取网关推送的二进制原始数据。
网关上报的数据格式
基础数据格式:
帧头 | 基站ID | 命令类型 | 长度 | PAYLOAD | 流水号 | CRC校验 | 帧尾 |
---|---|---|---|---|---|---|---|
1字节 | 4字节 | 1字节 | 1字节 | N字节 | 2字节 | 1字节 | 1字节 |
说明:
帧头:固定为0x8E
网关ID:贴在基站壳子上的id,为4字节的BCD码,比如基站id为10000017,这四个字节为0x10,0x00,0x00,0x17
命令类型:表示这个串的含义,不同的命令类型,有不同的长度和解析。
长度:PAYLOAD的长度。
PAYLOAD:负载的数据。
流水号:基站会自动累加流水号。
Crc校验:从基站ID开始每个字节亦或到流水号,最后的到的字节放在这里(bcc校验)。
帧尾:固定为0x8D
AOA定位网关上报数据
AOA上报的位置信息的命令为(0xBE)
举例说明:
8E 10 02 00 04 BE 0C 01 02 00 00 00 60 C2 00 00 39 00 2E 07 95 80 8D
按网关的命令格式解析如下:
字符位 | 例子 | 说明 |
---|---|---|
0位 | 8E | 帧头 |
1~5位 | 10 02 00 04 | 网关ID |
6位 | BE | 命令,AOA命令都是BE |
7位 | 0C | Payload 长度 |
8~19位 | 01 02 00 00 00 60 C2 00 00 39 00 2E | AOA数据的Payload |
20~21位 | 07 95 | 流水号 |
22位 | 80 | 校验值 |
23位 | 8E | 帧尾 |
AOA数据的PAYLOAD数据固定为12个字节下面按例子的payload数据进行分字节解析:
字符位 | 例子 | 说明 |
---|---|---|
0位 | 01 | 数据类型说明,说明是AOA位置数据(区分状态类型数据) |
1~6位 | 02 00 00 00 60 C2 | 标签的MAC地址,该位置信息属于哪一个标签,mac地址是标签的唯一标识 |
7位 | 00 | 保留位 |
8~9位 | 00 39 | 标签数据的方位角,用于计算位置,两个字节,高字节在前,例子中的00 39 就是指方位角度为57° |
10~11位 | 00 2E | 标签数据的俯仰角,用于计算位置和距离,两个字节,高字节在前,例子中的00 39 就是指方位角度为46° |