全尺寸人形机器人
Booster K1 设置指南
完成 Booster K1 人形机器人的逐步设置 - 从拆箱到最初的步行步骤到平台远程操作集成。
1
安全和工作空间准备
严重安全警告
Booster K1 是一个全尺寸的人形机器人,重量超过 40 公斤。 跌倒可能会导致严重的人身伤害和财产损失。 切勿在没有训练有素的观察员在场的情况下操作 K1。 在步行测试期间,让所有观察者与机器人保持至少 2 m 的距离。
工作空间要求
- 最小建筑面积: 3 m × 3 m 透明、坚硬、水平的表面
- 天花板间隙: 最小 2.2 m
- 没有障碍 步行模式下的操作半径内
- 紧急停止: 开机前请确保遥控器已充电且在触手可及的范围内
- 起重夹具: 自定义模式开发所需 - 机器人在进入关节级控制之前必须暂停
拆箱清单
- 检查所有 22 个接头是否有运输损坏 - 在潮湿状态下用手轻轻移动每个接头
- 验证是否包含以太网电缆并且您的工作站有空闲的有线端口
- 首次使用前请将遥控器充满电
- 阅读包装盒中包含的 Booster Robotics K1 使用说明书
2
开机和启动顺序
上电前
确认机器人直立、稳定且工作空间整洁。 K1 启动进入 DAMP 模式 - 所有关节都将被动顺应。 在确认 SDK 连接之前,请勿命令任何模式更改。
配置您的以太网接口
K1的默认有线IP是 192.168.10.102。 将计算机的有线网络接口设置为:
- IP地址:
192.168.10.10 - 子网掩码:
255.255.255.0 - 网关:
192.168.10.1
验证连接性
ping 192.168.10.102 # should respond with <5ms latency on wired
通过 SSH 检查启动状态
ssh booster@192.168.10.102 # password: 123456 booster-cli launch -c status # confirm service is running
无线选项
通过 Booster 应用程序配置 WiFi — 机器人将收到动态 IP。 使用该 IP 而不是 192.168.10.102 进行 SDK 连接。
3
SDK安装和首次连接
安装Booster SDK
官方Python SDK分布在PyPI上,需要Python 3.8或更高版本。
pip install booster_robotics_sdk_python --user
第一次SDK连接和状态读取
import booster
client = booster.BoosterClient("192.168.10.102")
status = client.get_robot_status()
print(f"Mode: {status.mode}")
print(f"Battery: {status.battery_percentage:.1f}%")
print(f"IMU: {status.imu_status}")
管理机器人服务(SSH)
booster-cli launch -c start # start service booster-cli launch -c stop # stop service booster-cli launch -c restart # restart service cat /opt/booster/version.txt # check firmware version
4
基本运动测试
人形坠落危险
所有人与机器人的距离至少为 2 m。 在初始运动测试期间,始终将手放在紧急停止装置上。 在机器人在地板表面上进行良好校准之前,请勿尝试超过 0.3 m/s 的横向速度。
模式转换顺序:DAMP → PREP → WALK
始终遵循这个确切的顺序。 切勿跳过 PREP 或直接从 DAMP 进入 WALK。
import booster
import time
client = booster.BoosterClient("192.168.10.102")
# Step 1: Enter PREP — robot stands and holds position
client.change_mode(booster.Mode.PREP)
time.sleep(3) # IMPORTANT: wait full 3s for balance stabilization
print("Robot standing in PREP mode.")
# Step 2: Enter WALK mode
client.change_mode(booster.Mode.WALK)
time.sleep(2)
# Step 3: Walk forward slowly
client.walk(0.2, 0.0, 0.0) # forward 0.2 m/s
time.sleep(3)
client.walk(0.0, 0.0, 0.0) # stop
# Return to standing
client.change_mode(booster.Mode.PREP)
行走速度参数
这 client.walk(forward, lateral, angular) 呼叫接受:
- 向前: −0.5 至 +0.5 m/s(正=向前)
- 侧: −0.5 至 +0.5 m/s(正 = 右)
- 角度: −1.0 至 +1.0 rad/s(正 = 左转)
遥控器快捷键
- LT + 开始: 进入准备模式
- RT+A: 进入步行模式(从 PREP)
- LT + 后退: 进入阻尼模式
- 左摇杆: 步行方向· 右摇杆: 转动
- 方向键: 头部运动
预定义动作(步行模式)
client.play_action("wave") # wave hand
client.play_action("handshake") # handshake
client.play_action("bow") # bow
client.play_action("fortune_cat") # fortune cat pose
client.play_action("new_year_dance") # new year dance
client.play_action("rock_dance") # rock dance
5
手臂操作
头部姿势控制
使用控制头偏航 (±90°) 和俯仰 (−40° 至 +30°) set_head_pose(yaw_rad, pitch_rad)。 首先将角度转换为弧度:
import math def deg2rad(d): return d * math.pi / 180.0 # Look 30° left and 10° down client.set_head_pose(deg2rad(30), deg2rad(-10)) # Return to center client.set_head_pose(0.0, 0.0)
CUSTOM模式——直接联合控制
CUSTOM模式需要物理支持
仅当机器人悬挂在起重夹具上时才进入自定义模式。 所有 22 个关节均可直接控制——绕过高级平衡控制器。 使用不当会导致机器人跌倒。
# Enter CUSTOM mode from PREP only, with robot on lifting device client.change_mode(booster.Mode.CUSTOM) # Joint indexing: j1=head_yaw, j2=head_pitch, j3–j22=body joints # Refer to K1 Instruction Manual for full joint map
内置代理模式
client.enter_agent("default") # Booster default agent
client.enter_agent("soccer") # soccer agent
client.enter_agent("hi_chat") # conversational AI agent
client.enter_agent("dance") # dance agent
6
数据收集和平台Teleop
这 k1_agent.py 脚本通过 WebSocket 将 Booster K1 连接到 RoboticsCenter 平台,从而实现远程操作、联合监控以及从浏览器收集演示数据。
安装并启动代理
pip install websockets # Real hardware python k1_agent.py \ --backend wss://your-backend.run.app \ --session YOUR_SESSION_ID \ --node-id k1-lab-01 \ --telemetry-hz 8 # Mock mode — no K1 hardware required python k1_agent.py \ --backend ws://localhost:8000 \ --session test-session \ --mock
由代理传输的遥测数据(默认 8 Hz)
- 6 个主要关节的关节角度(j1–j6)
- 电机状态:每个电机的位置、转速、温度
- 行走速度分量:vx、vy、wz
- 电池百分比和电流模式字符串
- 活跃代理名称(默认/足球/舞蹈/HiChat)
- 用于帧对齐的毫秒时间戳
收集日志以进行调试
通过 SSH 连接到机器人并运行:
booster-cli log -st YYYYMMDD-HHMMSS -et YYYYMMDD-HHMMSS -o /home/booster/Documents