自定义类型
本文档列出 SDK 中使用的自定义数据类型,对应 Python SDK 类型声明(lebai_sdk.pyi)。各语言 SDK 结构近似一致,仅写法不同。
提示
- 关节位姿
JointPose为 6 元素数组(弧度)。 - 笛卡尔位姿
CartesianPose为字典:位置单位 m,角度单位 rad。 - 枚举类型在各语言中均为字符串(如机器人状态
"IDLE"、"MOVING")。
位姿类型
JointPose
关节位姿(弧度):[关节1, 关节2, ..., 关节6],即 [list[float]]
CartesianPose
笛卡尔位姿(位置单位 m,角度单位 rad)
| 字段 | 类型 | 说明 |
|---|---|---|
| x | [float] | X 坐标(m) |
| y | [float] | Y 坐标(m) |
| z | [float] | Z 坐标(m) |
| rx | [float] | 绕 X 轴旋转角度(rad) |
| ry | [float] | 绕 Y 轴旋转角度(rad) |
| rz | [float] | 绕 Z 轴旋转角度(rad) |
Pose
位姿参数:关节位姿或笛卡尔位姿二选一,即 [JointPose] | [CartesianPose]
Position
空间位置(单位 m)
| 字段 | 类型 | 说明 |
|---|---|---|
| x | [float] | X 坐标(m) |
| y | [float] | Y 坐标(m) |
| z | [float] | Z 坐标(m) |
数据对象类型
DeviceInfo
设备发现返回的设备信息
| 字段 | 类型 | 说明 |
|---|---|---|
| name | [str] | 设备名称 |
| mac | [str] | MAC 地址 |
| ip | [str] | IP 地址 |
| online | [bool] | 是否在线 |
KinData
运动数据(当前状态)
| 字段 | 类型 | 说明 |
|---|---|---|
| actual_joint_pose | [JointPose] | 当前关节位置(弧度) |
| actual_joint_speed | [JointPose] | 当前关节速度(rad/s) |
| actual_joint_acc | [JointPose] | 当前关节加速度(rad/s²) |
| actual_joint_torque | [JointPose] | 当前关节力矩(Nm) |
| target_joint_pose | [JointPose] | 目标关节位置(弧度) |
| target_joint_speed | [JointPose] | 目标关节速度(rad/s) |
| target_joint_acc | [JointPose] | 目标关节加速度(rad/s²) |
| target_joint_torque | [JointPose] | 目标关节力矩(Nm) |
| actual_tcp_pose | [CartesianPose] | 当前 TCP 位姿 |
| target_tcp_pose | [CartesianPose] | 目标 TCP 位姿 |
| actual_flange_pose | [CartesianPose] | 当前法兰位姿 |
PhyData
物理数据
| 字段 | 类型 | 说明 |
|---|---|---|
| joint_temp | [list[float]] | 关节温度(℃) |
| joint_voltage | [list[float]] | 关节电压(V) |
| flange_voltage | [float] | 法兰电压(V) |
Payload
负载参数
| 字段 | 类型 | 说明 |
|---|---|---|
| mass | [float] | 负载质量(kg) |
| cog | [Position] | 负载重心偏移位置(m) |
Claw
夹爪状态
| 字段 | 类型 | 说明 |
|---|---|---|
| force | [float] | 夹爪力度(力控) |
| amplitude | [float] | 夹爪开度(位控) |
| weight | [float] | 负载重量(已弃用) |
| hold_on | [bool] | 开度是否稳定 |
LedStyle
LED 灯带样式
| 字段 | 类型 | 说明 |
|---|---|---|
| mode | [int] | 模式 |
| speed | [int] | 速度 |
| colors | [list[int]] | RGB 颜色列表 |
| voice | [int] | 声音 |
| volume | [int] | 音量 |
CommandStdout
命令执行结果
| 字段 | 类型 | 说明 |
|---|---|---|
| done | [bool] | 未开始或已完成 |
| stdout | [str] | 调试信息 |
| stderr | [str] | 警告信息 |
| code | [int] | 返回码,非 0 为失败 |
Item
KV 存储项
| 字段 | 类型 | 说明 |
|---|---|---|
| key | [str] | 键名 |
| value | [str] | 键值 |
HttpRequest
HTTP 请求
| 字段 | 类型 | 说明 |
|---|---|---|
| method | [str] | 请求方法,如 "GET"、"POST" |
| url | [str] | 请求地址 |
| headers | [dict[str, str]] | 请求头 |
| body | [str] | 请求体 |
HttpResponse
HTTP 响应
| 字段 | 类型 | 说明 |
|---|---|---|
| status | [int] | 状态码 |
| headers | [dict[str, str]] | 响应头 |
| body | [str] | 响应体 |
ConnectOption
连接选项
| 字段 | 类型 | 说明 |
|---|---|---|
| request_timeout | [int] | 请求超时时间(秒) |
枚举类型(均为字符串)
IoDevice
IO 设备名(未知设备名默认视为 "ROBOT")
| 取值 | 说明 |
|---|---|
ROBOT | 控制箱 |
FLANGE | 法兰盘 |
EXTRA | 扩展板 |
SHOULDER | 肩部灯板 |
FLANGE_BTN | 法兰按钮 |
DigitalMode
数字 IO 模式
| 取值 | 说明 |
|---|---|
INPUT | 输入 |
OUTPUT | 输出 |
Relation
信号比较关系
| 取值 | 说明 |
|---|---|
EQ | 等于 |
NEQ | 不等于 |
LT | 小于 |
LTE | 小于等于 |
GT | 大于 |
GTE | 大于等于 |
Parity
串口校验位("None" 表示无校验)
| 取值 | 说明 |
|---|---|
None | 无奇偶校验 |
Odd | 奇校验 |
Even | 偶校验 |
AutoCfg
开机自动配置项
| 取值 | 说明 |
|---|---|
ARM_POWER | 开机后自动上电 |
ENABLE_JOINT | 开机后自动上电并启动手臂 |
INIT_CLAW | 上电后自动初始化夹爪 |
RobotState
机器人状态
| 取值 | 说明 |
|---|---|
DISCONNECTED | 机器人硬件通讯故障 |
ESTOP | 机器人处于急停状态,请确认安全性 |
BOOTING | 机器人初始化中 |
ROBOT_OFF | 机器人电源未开启 |
ROBOT_ON | 机器人电源已开启 |
IDLE | 机器人处于空闲状态 |
PAUSED | 机器人处于暂停中状态 |
MOVING | 机器人运动中 |
UPDATING | 机器人系统更新中 |
STARTING | 机器人初始化完成到空闲的启动过程中 |
STOPPING | 机器人空闲状态转到停止状态 |
TEACHING | 机器人处于示教模式中 |
STOP | 机器人处于停止状态,非急停状态 |
EstopReason
急停原因
| 取值 | 说明 |
|---|---|
NONE | 未急停 |
SYSTEM | 软件 |
MANUAL | 手动调用接口 |
HARD_ESTOP | 硬急停按钮 |
COLLISION | 碰撞 |
JOINT_LIMIT | 关节限位 |
EXCEED | 超速 |
TRAJECTORY_ERROR | 运动规划错误 |
COMM_ERROR | 通信故障 |
CAN_ERROR | CAN 通信故障 |
JOINT_ERROR | 关节故障 |
其他类型
Robot
机器人控制接口。连接成功后即可调用各类控制、查询方法,可被复制,多个引用共享同一个连接。
RobotSubscription
RPC 订阅对象,可反复调用 next() 获取推送数据。
