実物大の人型ロボット
ブースター K1 セットアップガイド
開梱から最初の歩行ステップ、プラットフォーム テレオペの統合まで、Booster K1 ヒューマノイド ロボットのステップバイステップのセットアップを完了します。
1
安全性と作業スペースの準備
重要な安全上の警告
ブースター K1 は、体重 40 kg を超える実物大のヒューマノイドです。 落下は人に重傷を負わせたり、物的損害を引き起こす可能性があります。 訓練を受けた監視員が立ち会わない限り、K1 を決して操作しないでください。 歩行テスト中は、すべての観察者をロボットから少なくとも 2 m 離れてください。
ワークスペースの要件
- 最小床面積: 3 m × 3 m の透明で硬い平坦な表面
- 天井クリアランス: 最小2.2m
- 障害物なし ウォークモード時の動作半径内
- 緊急停止: 電源を入れる前に、送信機が充電されていて手の届くところにあることを確認してください
- 昇降治具: CUSTOM モード開発に必要 — 関節レベルの制御に入る前にロボットを一時停止する必要があります
開梱チェックリスト
- 22 個すべてのジョイントに配送時の損傷がないか検査します。DAMP 状態で各ジョイントを手でゆっくりと動かします。
- イーサネット ケーブルが付属しており、ワークステーションに空き有線ポートがあることを確認してください。
- 初めて使用する前に送信機を完全に充電してください
- 箱に同梱されている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 を受け取ります。 SDK 接続には 192.168.10.102 の代わりにその IP を使用します。
3
SDKのインストールと最初の接続
ブースター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.5m/s(正=正面)
- 横方向: −0.5〜+0.5m/s(正=右)
- 角度: −1.0 ~ +1.0 rad/s (正 = 左折)
リモコンのショートカット
- LT + スタート: PREPモードに入る
- RT+A: ウォークモードに入る(PREPから)
- LT + 戻る: DAMPモードに入る
- 左スティック: 歩く方向・ 右スティック: 振り向く
- D-パッド: 頭の動き
あらかじめ定義されたアクション(ウォークモード)
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モードでは物理的なサポートが必要です
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)
- モーターの状態: モーターごとの位置、RPM、温度
- 歩行速度コンポーネント: vx、vy、wz
- バッテリーの割合と現在のモード文字列
- アクティブなエージェント名 (デフォルト / サッカー / ダンス / HiChat)
- フレームアライメントのミリ秒タイムスタンプ
デバッグ用のログを収集する
ロボットに SSH で接続し、次を実行します。
booster-cli log -st YYYYMMDD-HHMMSS -et YYYYMMDD-HHMMSS -o /home/booster/Documents