自定义类型

本文档列出 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_ERRORCAN 通信故障
JOINT_ERROR关节故障

其他类型

Robot

机器人控制接口。连接成功后即可调用各类控制、查询方法,可被复制,多个引用共享同一个连接。

RobotSubscription

RPC 订阅对象,可反复调用 next() 获取推送数据。