...
请求数据包 | ||||||
---|---|---|---|---|---|---|
命令代码 | 负载数据 | |||||
0x10 | 协议版本(u8) | |||||
应答数据包 | ||||||
应答代码 | 负载数据 | |||||
<OK> | 型号(u8[12]) | 固件版本(u16) | 硬件版本(u16) | 序列(u32[3]) |
该命令数据域描述如下:
数据域 | 类型 | 描述 |
---|---|---|
协议版本 | u8 | 协议的版本信息,版本信息不匹配时外部系统应应答错误 |
型号 | u8[12] | 外部系统的型号,最多12个字符 |
固件版本 | u16 | 外部系统的固件版本 |
硬件版本 | u16 | 外部系统的硬件版本 |
序列号 | u32[3] | 外部系统的序列号,最多12个字节 |
...
请求数据包 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
命令代码 | 负载数据 | |||||||||||
0x30 | 无 | |||||||||||
应答数据包 | ||||||||||||
应答代码 | 负载数据 | |||||||||||
<OK> | 电池电量百分比(u8) | 电池充电状态(u8) |
该命令数据域描述如下:
数据域 | 类型 | 描述 |
---|---|---|
电池电量百分比 | u8 | 外部系统的电池电量百分比,0-100 |
电池充电状态 | u8 | 外部系统的电池状态,该变量为一个位图。 |
...
请求数据包 | ||||||
---|---|---|---|---|---|---|
命令代码 | 负载数据 | |||||
0x32 | 无 | |||||
应答数据包 | ||||||
应答代码 | 负载数据 | |||||
<OK> | 距离传感器数据(u32[16]) |
该命令数据域描述如下:
数据域 | 类型 | 描述 |
---|---|---|
距离传感器数据 | u32[16] | 外部系统的距离传感器数据,结果为距离传感器到障碍物的距离信息,单位为mm,Q16定点小数,最多支持16组距离传感器。 |
...
请求数据包 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
命令代码 | 负载数据 | |||||||||||
0x41 | X轴向速度量(s32) | Y轴向速度量(s32) | 角速度量(s32) | |||||||||
应答数据包 | ||||||||||||
应答代码 | 负载数据 | |||||||||||
<OK> | X轴向位移(s32) | Y轴向位移(s32) | 角度位移(s32) |
该命令数据域描述如下:
数据域 | 类型 | 描述 |
---|---|---|
X轴向速度量 | s32 | X轴向速度,Q16定点小数 |
Y轴向速度量 | s32 | Y轴向速度,Q16定点小数 |
角速度量 | s32 | 逆时针角速度,Q16定点小数 |
X轴向位移 | s32 | 外部系统整体相对于上一次应答此请求时的X轴向位移,单位为mm,Q16定点小数。 |
Y轴向位移 | s32 | 外部系统整体相对于上一次应答此请求时的Y轴向位移,单位为mm,Q16定点小数。 |
角度位移 | s32 | 外部系统整体相对于上一次应答此请求时的逆时针角度位移,单位为度,Q16定点小数。 |
...
数据域 | 类型 | 描述 |
---|---|---|
外部系统命令代码 | u8 | 外部系统的命令代码,只能是SLAMWARE Core支持的命令代码。详情请见下表。 |
SLAMWARE Core支持的命令代码如下:
外部系统命令代码 | 命令名称 | 描述 |
---|---|---|
0x51 | GET_INFO | 获取SLAMWARE CORE系统信息,包含软硬件版本,网络配置。 |
0x52 | RESET_WIFI | 重置SLAMWARE CORE无线网络 |
0x53 | FW_UPGRADING | 更新SLAMWARE CORE固件 |
0x80 | START_SWEEP | 开始清扫(仅针对扫地机版本) |
0x81 | STOP_SWEEP | 结束清扫(仅针对扫地机版本) |
0x82 | SPOT_SWEEP | 定点清扫(仅针对扫地机版本) |
0x90 | GET_HEALTH | 获取健康状况 |
0xA0 | MOVE_FORWARD | 向前 |
0xA1 | MOVE_BACKWARD | 向 后 |
0xA2 | TURN_LEFT | 向左 |
0xA3 | TURN_RIGHT | 向右 |
0xAF | CANCEL_ACTION | 取消上一步操作 |
0xB0 | GET_AUXILIARY_ANCHOR | 获取辅助定位传感器 |
...
请求数据包 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
命令代码 | 负载数据 | ||||||||||
0x5F | 无 | ||||||||||
应答数据包 | |||||||||||
应答代码 | 负载数据 | ||||||||||
<OK> | 应答数据(u8) |
该命令数据域描述如下:
数据域 | 类型 | 描述 |
---|---|---|
应答数据 | u8 | 外部系统命令的应答数据,与SLAMWARE CORE命令代码相关 |
...
请求数据包 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
命令代码 | 负载数据 | |||||||||||
0x90 | 0x01 | |||||||||||
应答数据包 | ||||||||||||
应答代码 | 负载数据 | |||||||||||
<OK> | Health_flag(u8) | Error_count(u8) |
该命令数据域描述如下:
数据域 | 类型 | 描述 |
---|---|---|
Health_flag | u8 | 表示健康信息按照严重程度的分类,具体定义请参考下表 |
Error_count | u8 | 表示错误信息的数目 |
...
请求数据包 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
命令代码 | 负载数据 | |||||||||||
0x90 | 0x02 | error id(u8) | ||||||||||
应答数据包 | ||||||||||||
应答代码 | 负载数据 | |||||||||||
<OK> | error_code(u32) | error_message(u8[32]) |
该命令数据域描述如下:
数据域 | 类型 | 描述 |
---|---|---|
error_id | u8 | 表示第几个error,是一个小于error count的整数. |
error_code | u32 | 具体请参考下表。 |
error_message | u8[32] | 表示具体错误信息的字符串. |
...
请求数据包 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
命令代码 | 负载数据 | |||||||||||
0x35 | 无 | |||||||||||
应答数据包 | ||||||||||||
应答代码 | 负载数据 | |||||||||||
<OK> | Flag(u8) | Anchors(u8[*]) |
该命令数据域描述如下:
数据域 | 类型 | 描述 |
---|---|---|
Flag | u8 | 具体请参考后附表格说明。 |
Anchors | u8[*] | 表示多个AnchorInfo的数据域。具体格式请参考后附表格说明。 |
...
Flag | Bit | 描述 |
---|---|---|
辅助传感器类型 | [7:5] | 表示辅助传感器的类型。 |
辅助传感器标准差域 | [4] | 表示辅助数据是否支持标准差测量。 |
辅助传感器锚数量 | [15:8] | 表示辅助传感器锚数量。 |
AnchorInfo数据格式如下:
AnchorInfo[0] | 第0个AnchorInfo | 注:n 为辅助传感器数量。 |
AnchorInfo[1] | 第1个AnchorInfo | |
... | ||
AnchorInfo[n] | 第n个AnchorInfo |
...