四、控制接口
4.1 初始化机械臂
{
"robot_name": "armleft"
}
{
"success": true,
"message": "ok"
}
4.2 暂停机械臂运动
| 方法 |
路径 |
POST |
/api/arm/pause |
{
"robot_name": "armleft"
}
{
"success": true,
"message": "ok"
}
4.3 机械臂运动(关节轨迹)
请求参数
{
"robot_name": "armleft",
"trajectory": [[关节角...], [关节角...]],
"unit": "deg",
"block": 0,
"timeout": 30.0
}
| 参数 |
类型 |
说明 |
robot_name |
string |
机械臂标识 |
trajectory |
array |
关节角度轨迹二维数组 |
unit |
string |
角度单位 deg / rad |
block |
int |
是否阻塞(1 阻塞等待完成) |
timeout |
float |
超时时间(秒) |
成功响应
{
"success": true,
"message": "ok"
}
失败响应
{
"success": false,
"status": -1,
"message": "invalid args"
}
提示:使用 block=1 时接口会阻塞直到运动完成; 关节角度单位通过 unit 参数切换 deg / rad。
4.4 机械臂移动到目标位置(笛卡尔)
| 方法 |
路径 |
POST |
/api/arm/move_to_target |
{
"robot_name": "armleft",
"target": [0.5, 0.1, 0.3]
}
{
"status": 1,
"success": true,
"message": "ok"
}
4.5 单独控制各个关节
| 方法 |
路径 |
POST |
/api/arm/joint_control |
{
"direction": 1,
"joint_move_angle": "5",
"joint_name": "joint7",
"robot_name": "armleft",
"speed": 30
}
| 参数 |
类型 |
说明 |
direction |
int |
方向(1 正 / -1 负) |
joint_move_angle |
string |
移动角度量 |
joint_name |
string |
关节名称(如 joint7) |
robot_name |
string |
机械臂标识 |
speed |
int |
速度 |
{
"status": 1,
"message": "joint control success"
}
4.6 机械臂末端沿着基坐标系移动
| 方法 |
路径 |
POST |
/api/arm/end_move |
{
"robot_name": "armright",
"axis": "x",
"distance": 0.05
}
| 参数 |
类型 |
说明 |
robot_name |
string |
机械臂标识 |
axis |
string |
坐标轴 x / y / z |
distance |
float |
移动距离(米) |
{
"status": 1,
"success": true,
"message": "ok"
}
4.7 设置机械臂末端执行位置
| 方法 |
路径 |
POST |
/api/arm/end_effector/set |
{
"left": {
"left_jaw": {
"position": 0
}
},
"left_type": "gripper"
}
{
"success": true,
"message": "已发布末端执行器命令 ...",
"joints": [...]
}
五、预设位姿接口
5.1 保存机械臂固定姿态
| 方法 |
路径 |
POST |
/api/arm/save_pose |
{
"robot_name": "armleft",
"location_name": "my_pose",
"joint_angles": [0.0, -30.0, ...]
}
| 参数 |
类型 |
说明 |
robot_name |
string |
机械臂标识 |
location_name |
string |
位姿名称 |
joint_angles |
array |
关节角度数组 |
{
"success": true,
"message": "ok"
}
5.2 机械臂移动到预设位置
| 方法 |
路径 |
POST |
/api/arm/move_to_saved_pose |
{
"robot_name": "armleft",
"location_name": "after_grasp",
"block": 1
}
| 参数 |
类型 |
说明 |
robot_name |
string |
机械臂标识 |
location_name |
string |
已保存的位姿名称 |
block |
int |
是否阻塞等待完成 |
{
"success": true,
"message": "移动指令发送成功"
}