360 Secure SkillHub
360 安全技能中心

soarm-control

该 Skill 说明如何通过本机 SOARM HTTP 服务控制六轴机械臂:读取当前关节值与末端 XYZ 位置,按关节角度(前五轴用角度,夹爪 0-100)或 XYZ 米制坐标移动,并可触发抓取任务;文中还给出 initial、top_down 两个预设位姿、接口参数说明与服务启动脚本的用法。

yuyoujiang
yuyoujiang
热度 63.95
最近更新 2026-05-18 12:14:27
分类:自动化依赖:第三方 API / 代码执行应用场景:自动化脚本 / API 集成

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add soarm-control
Metadata
name
soarm-control
description
Control the robotic arm through the OpenClaw SOARM API. Use this skill when reading current joint state, moving by joint angles, moving by XYZ coordinates, or handling SOARM robot-control requests.

🦐 SOARM Control Skill

Use the existing SOARM API to control the robotic arm directly.

⚙️ Configuration Notes

Default Local Setup (when on same machine):

  • API Base URL: http://127.0.0.1:8000

🔍 Key APIs & Examples

Read Current State

curl -sS http://127.0.0.1:8000/joints

Returns current joint values and XYZ end-effector position.


Move To a Position By Joint Angles

curl -sS -X POST http://127.0.0.1:8000/move/joints \
  -H 'Content-Type: application/json' \
  -d '{"angles":[0,0,0,0,0,0]}'

Parameter Notes:

  • Joints order: shoulder_pan, shoulder_lift, elbow_flex, wrist_flex, wrist_roll, gripper
  • First 5 joints use degrees (deg)
  • Gripper uses 0-100 range

Fixed Positions:

Name shoulder_pan shoulder_lift elbow_flex wrist_flex wrist_roll gripper
initial 0 -104 95 65 -95 10
top_down 0 -50 30 90 -95 70

Examples:

Return to initial:

curl -sS -X POST http://127.0.0.1:8000/move/joints \
  -H 'Content-Type: application/json' \
  -d '{"angles":[0,-104,95,65,-95,10]}'

Return to top_down:

curl -sS -X POST http://127.0.0.1:8000/move/joints \
  -H 'Content-Type: application/json' \
  -d '{"angles":[0,-50,30,90,-95,70]}'

Move By XYZ Coordinates

curl -sS -X POST http://127.0.0.1:8000/move/xyz \
  -H 'Content-Type: application/json' \
  -d '{"x":0.2,"y":0.0,"z":0.2}'

Parameter Notes:

  • x: forward/backward (positive = forward)
  • y: left/right (positive = left)
  • z: up/down (positive = up)
  • Values in meters

Trigger a Pick Task

curl -sS -X POST http://127.0.0.1:8000/pick

Returns:

  • ok: true if the task was accepted
  • message: 抓取任务已启动
  • Returns HTTP 409 if another pick task is already running

🐙 Quick Commands I Can Run

Return to initial position

curl -sS -X POST http://localhost:8000/move/joints \
  -H 'Content-Type: application/json' \
  -d '{"angles":[0,-104,95,65,-95,10]}'

Return to top-down position

curl -sS -X POST http://localhost:8000/move/joints \
  -H 'Content-Type: application/json' \
  -d '{"angles":[0,-50,30,90,-95,70]}'

Read current position

curl -sS http://localhost:8000/joints

🛠️ Setup Notes

When pairing your SOARM device with OpenClaw:

  1. Organize the skill directory

    ├── references
    │   └── so101_new_calib.urdf  # download from TheRobotStudio 
    ├── scripts
    │   ├── best.pt  # yolo11n model
    │   ├── control_soarm_joints.py
    │   ├── move_soarm_to_xyz_pinocchio.py
    │   ├── read_soarm_joints.py
    │   ├── soarm_api.py
    │   └── start_server.sh
    └── SKILL.md
    
  2. Perpare lerobot env

  3. Launch the server

    ~/.openclaw/workspace/skills/soarm-control 
    bash scripts/start_server.sh