🧪 新しいチュートリアルを公開中 — ロボットアームからセンサーまで
コンテンツへスキップ
この製品を購入公式ストア公式サイト

04 · キーボード遠隔操作 ​

キーボードで関節を「点動」させ、実機またはシミュレーションのアームを手動制御します——リーダーアームが不要なときの最速の制御方法であり、デモデータを録画する手段の 1 つでもあります。

前提:シミュレーション部分は 01 の完了のみで足ります;実機部分はさらに 03 の完了が必要です。 コマンド内の COM172/juxi_so101 は例です——ポートは 03 章で確認したものに置き換え、id はキャリブレーション時に付けた名前を使ってください。

コマンド ​

bash
export UV_CACHE_DIR='C:\Users\admin\AppData\Local\Temp\uv-cache'

# 真机从动臂
uv run --frozen --with mujoco python examples/so101_mujoco/teleoperate.py \
    --robot.type=so101_follower --robot.port=COM172 --robot.id=juxi_so101 \
    --robot.use_degrees=false --robot.max_relative_target=5 \
    --teleop.type=so101_keyboard --teleop.rate=150

# 仿真从动臂(MuJoCo 窗口自动打开)
uv run --frozen --with mujoco python examples/so101_mujoco/teleoperate.py \
    --teleop.rate=150

(teleoperate.py はデフォルトで --robot.type=so101_mujoco --teleop.type=so101_keyboard です。)

キー(押している間有効、グローバルリスニング——ウィンドウのフォーカスはどこでも可) ​

キー動作キー動作
w / sshoulder_lift 上 / 下a / zshoulder_pan 左 / 右
e / delbow_flex 伸 / 屈t / gwrist_flex + / −
y / hwrist_roll + / −u / jグリッパ 開く / 閉じる

キーは録画制御キーを意図的に避けて選ばれています(n/r/q、矢印キー、Esc)。こうすることで、遠隔操作と録画を同時に走らせられます。

主要パラメータ ​

パラメータ役割推奨値
--teleop.rateキーを押している間の目標速度(単位/秒)デフォルト 60 はやや遅い;実機の操作感は 150 が適切
--robot.max_relative_target制御周期ごとに関節を動かす最大単位(安全速度制限)実機 5(60Hz 遠隔操作)/ 10(30Hz 録画)
--robot.use_degrees=false角度制ではなくストローク比率制(−100 から 100)を使う実機では必ず追加。そうしないと単位が合わない(シミュレーションはデフォルトで一致)

挙動の説明 ​

  • 遠隔操作中はタイピングしないでください:キーボードリスニングはグローバルで、キーを消費しません——コンピュータ上のどのウィンドウでマッピングキー (w a s z e d t g y h u j、チャット欄のピンイン入力も含む)を叩いてもアームが同時に動きます。リーダーアームモードではこの問題はありません。
  • 接続の瞬間にアームが動きます:実機のフォロワーアームはまずトルクが入り(硬くなり)、その後「中点姿勢」へ移動します(キーを押す前の目標); シミュレーションのアームは直接中点姿勢に収束します。手元にスペースを空けておいてください。
  • 終了:そのターミナルで Ctrl-C(または Esc を押すとキーボードリスニングが切断され、クリーンに終了します)。終了後、実機はトルクが切れて柔らかくなるので、 手で支えてください——これは正常な動作です。
  • 起動ログに連続する clamped to be safe WARNING は速度リミッタが「追いつく」ときの正常な出力で、到達すると自動的に停止します。