3.2 数据类型
概述
本文档描述 Robot SDK 中使用的所有数据类型、枚举和结构体定义。
命名空间
namespace robot_sdk
传输协议
TransportProtocol
enum class TransportProtocol
说明:
SDK 支持的传输协议类型。
枚举值 |
说明 |
|---|---|
|
WebSocket 协议(默认推荐) |
|
UDP 协议 |
故障相关
FaultCode
enum class FaultCode
说明:
机器人系统中可能出现的故障码。
机器人系统中可能出现的故障码。
枚举值 |
说明 |
|---|---|
|
异常未知 |
|
执行器失能 |
|
执行器编码器错误 |
|
执行器掉线 |
|
执行器过压 |
|
执行器过温 |
|
执行器过温预警 |
|
执行器控制超时 |
|
执行器欠压 |
|
单电池过温预警 |
|
单电池电量低于10% |
|
单电池电量低于20%,高于10% |
|
电源控制板MCU连接失败 |
|
CAN通信异常 |
|
遥控器断链 |
|
系统时间跳变 |
|
机器人状态异常 |
|
IMU连接异常 |
|
IMU数据不更新 |
FaultLevel
enum class FaultLevel
说明:
故障等级定义。
枚举值 |
整数值 |
说明 |
|---|---|---|
|
0 |
未知 |
|
1 |
致命错误 |
|
2 |
一般错误 |
|
3 |
警告 |
IMU 数据
ImuData
struct ImuData
说明:
IMU(惯性测量单元)数据结构体。
成员 |
类型 |
说明 |
|---|---|---|
|
|
加速度计三轴数据 (m/s²) |
|
|
陀螺仪三轴数据 (rad/s) |
|
|
四元数 |
故障数据
FaultData
struct FaultData
说明:
故障信息结构体。
成员 |
类型 |
说明 |
|---|---|---|
|
|
故障码 |
|
|
故障等级 |
|
|
故障信息文本 |
电源相关
PowerSupplyStatus
enum class PowerSupplyStatus
说明:
电池电源状态枚举。
枚举值 |
整数值 |
说明 |
|---|---|---|
|
0 |
电源状态未知 |
|
1 |
正在充电 |
|
2 |
放电中 |
|
4 |
已满电 |
BatteryData
struct BatteryData
说明:
双电池数据结构体。
成员 |
类型 |
说明 |
|---|---|---|
|
|
电池1 电量(百分比 0-100) |
|
|
电池2 电量(百分比 0-100) |
|
|
电池1 是否在位 |
|
|
电池2 是否在位 |
|
|
电池1 电压 (V) |
|
|
电池2 电压 (V) |
|
|
电池1 温度 (°C) |
|
|
电池2 温度 (°C) |
|
|
电池1 电流 (A) |
|
|
电池2 电流 (A) |
|
|
电池1 电源状态 |
|
|
电池2 电源状态 |
传感器数据
LuxData
struct LuxData
说明:
光强传感器数据。
成员 |
类型 |
说明 |
|---|---|---|
|
|
光强值 |
机器人状态枚举
FillLightStatus
enum class FillLightStatus
说明:
补光灯状态枚举。
枚举值 |
整数值 |
说明 |
|---|---|---|
|
0 |
未知状态 |
|
1 |
补光灯打开 |
|
2 |
补光灯关闭 |
SpeedLevel
enum class SpeedLevel
说明:
速度等级枚举,影响 Move 命令的速度限制。
枚举值 |
整数值 |
说明 |
|---|---|---|
|
0 |
未知 |
|
1 |
低速 |
|
2 |
中速 |
|
3 |
高速 |
速度限制说明:
等级 |
vx (前后) |
vy (左右) |
vyaw (旋转) |
|---|---|---|---|
低速 |
-0.5 ~ +0.5 m/s |
-1.0 ~ +1.0 m/s |
-2.0 ~ +2.0 rad/s |
中速 |
0 m/s |
-2.0 ~ +2.0 m/s |
-1.5 ~ +1.5 rad/s |
高速 |
0 m/s |
-3.0 ~ +3.0 m/s |
-1.0 ~ +1.0 rad/s |
EmergencyStatus
enum class EmergencyStatus
说明:
急停状态枚举。
枚举值 |
整数值 |
说明 |
|---|---|---|
|
0 |
未知 |
|
1 |
急停解除 |
|
2 |
急停触发 |
HeadDirection
enum class HeadDirection
说明:
机器人头尾方向枚举。
枚举值 |
整数值 |
说明 |
|---|---|---|
|
0 |
未知 |
|
1 |
狗头方向为前 |
|
2 |
狗尾方向为前 |
SportMode
enum class SportMode
说明:
机器人运动模式枚举。
枚举值 |
整数值 |
说明 |
|---|---|---|
|
0 |
未知 |
|
1 |
通用模式(可移动与一些姿态变换) |
|
2 |
原地模式(原地动作) |
|
3 |
登阶模式(仅支持移动) |
MotionStatus
enum class MotionStatus
说明:
机器人运动状态枚举。
枚举值 |
整数值 |
说明 |
|---|---|---|
|
0 |
未知 |
|
1 |
站立中 |
|
2 |
卧倒状态 |
|
3 |
匍匐状态 |
|
4 |
锁定状态 |
|
5 |
通用模式运动状态 |
|
6 |
原地模式运动状态 |
|
7 |
登阶模式运动状态 |
|
8 |
爬高台状态 |
|
9 |
瘦身状态 |
|
10 |
步态状态 |
控制相关
CtrlSource
enum class CtrlSource
说明:
机器人控制来源枚举。
枚举值 |
整数值 |
说明 |
|---|---|---|
|
0 |
未知 |
|
1 |
APP 控制 |
|
2 |
SDK 控制 |
|
3 |
其他控制 |
ControlLostInfo
struct ControlLostInfo
说明:
控制权丢失信息结构体。
ControlAvailableInfo
struct ControlAvailableInfo
说明:
控制权可用信息结构体。
TakeControlAck
struct TakeControlAck
说明:
获取控制权命令应答信息。
成员 |
类型 |
说明 |
|---|---|---|
|
|
错误码(0 表示成功,非 0 表示失败) |
|
|
失败原因描述 |
ReleaseControlAck
struct ReleaseControlAck
说明:
释放控制权命令应答信息。
成员 |
类型 |
说明 |
|---|---|---|
|
|
错误码(0 表示成功,非 0 表示失败) |
|
|
失败原因描述 |
CameraBitrateCmd
struct CameraBitrateCmd
说明:
摄像头码率配置参数。
成员 |
类型 |
说明 |
|---|---|---|
|
|
摄像头名称:前摄 "camera_front",后摄 "camera_back" |
|
|
摄像头码率,单位bps(bit/s),范围50000-100000000 |
CameraBitrateAck
struct CameraBitrateAck
说明:
摄像头码率配置参数。
成员 |
类型 |
说明 |
|---|---|---|
|
|
摄像头名称:前摄 "camera_front",后摄 "camera_back" |
|
|
摄像头码率,单位bps(bit/s),范围50000-100000000 |
Speed
struct Speed
说明:
机器人当前速度信息。
成员 |
类型 |
说明 |
|---|---|---|
|
|
前进/后退速度 (m/s) |
|
|
左右平移速度 (m/s) |
|
|
转向角速度 (rad/s) |
关节温度说明
std::unordered_map<std::string, double>
说明:
机器人关节名字与关节温度信息映射表。
轮足关节名字如下表
名字 |
说明 |
|---|---|
|
左前腿 1-4 号关节 |
|
右前腿 1-4 号关节 |
|
左后腿 1-4 号关节 |
|
右后腿 1-4 号关节 |
RobotState
struct RobotState
说明:
机器人综合状态信息。
成员 |
类型 |
说明 |
|---|---|---|
|
|
头部角度 (rad) |
|
|
前补光灯状态 |
|
|
后补光灯状态 |
|
|
是否为自动灯光模式 |
|
|
当前速度等级 |
|
|
软件急停状态 |
|
|
硬件急停状态 |
|
|
当前头尾方向 |
|
|
当前运动状态 |
|
|
电池信息 |
|
|
当前速度 |
|
|
里程累积数据 (m) |
|
|
关节温度<关节名称,关节温度> 单位:°C |
|
|
运动模式 |
|
|
控制来源 |
MotionData
struct MotionData
说明:
运动控制详细数据信息。
成员 |
类型 |
说明 |
|---|---|---|
|
|
四元数 [w, x, y, z] |
|
|
世界坐标系下速度 [x, y, z] (m/s) |
|
|
世界坐标系下位置 [x, y, z] (m) |
|
|
世界坐标系角速度 [x, y, z] (rad/s) |
|
|
自身坐标系下速度 [x, y, z] (m/s) |
|
|
自身坐标系下角速度 [x, y, z] (rad/s) |
|
|
时间戳 (ns) |
SpeedData
struct SpeedData
说明:
速度信息说明。
成员 |
类型 |
说明 |
|---|---|---|
|
|
前后速度 (m/s) |
|
|
左右平移速度 (m/s) |
|
|
旋转角速度 (rad/s) |