VLAI L1 セットアップガイド

開梱からデュアルアームキャリブレーション、モバイルベースのナビゲーション、データ収集まで、VLAI L1 のステップバイステップのセットアップを完了します。

1

組立・検査

開梱チェックリスト

  • 両方の 7-DOF アームに配送時の損傷がないか検査します。すべてのジョイントが手で自由に動くことを確認します。
  • 両方の自社開発 8Nm グリッパーがしっかりと取り付けられていることを確認します。
  • モバイルベースホイールを検査します - 両方の駆動ホイールが拘束されずに自由に回転する必要があります
  • リフトコラムが全範囲 (106 ~ 162 cm) でスムーズにスライドすることを確認します。
  • イーサネット ケーブルと電源アダプターが箱に入っていることを確認します。
  • ドキュメント パッケージに含まれる VLAI L1 安全ガイドをお読みください

ワークスペースの要件

  • 最小床面積: 2m×2mの透明な平らな面
  • ロボットのフットプリント: 幅 46 cm × 長さ 60 cm — 四方に余裕を持たせてください
  • 腕の届く範囲: アームあたり 63 cm — アームを伸ばしたときに手の届く範囲に障害物がないことを確認します。
  • 力: 標準110V/220Vコンセント2m以内
2

SDKのインストールとネットワークのセットアップ

要件

  • Python 3.10+ (3.11 推奨)
  • 開発者層以上 (ユース層には SDK へのアクセスは含まれません)
  • L1 の電源が入っており、同じローカル ネットワーク (イーサネットまたは 5GHz Wi-Fi) に接続されている

SDKをインストールする

pip install roboticscenter

ブラウザのテロップパネルに接続して開きます

rc connect --device l1
# Terminal prints: Session ready → https://platform.roboticscenter.ai/session/RC-XXXX-XXXX
# Open the URL in any browser to access the full teleop panel

Python 経由で共同データをストリーミングする

from roboticscenter import L1Robot

robot = L1Robot.connect()
print(robot.session_url)

for frame in robot.stream():
    joints = frame.data['joints']
    print(f"Left:  {joints['left_arm']}")
    print(f"Right: {joints['right_arm']}")
    print(f"Base:  {frame.data['base']}")
ハードウェアはまだありませんか? モックモードを使用する 走る rc connect --device l1 --mock 完全にシミュレートされた L1 セッションを開始します。 すべての SDK メソッド、ブラウザー テレオペ パネル、およびデータ記録はモック モードで同様に動作します。これは、ユニットの出荷前の CI パイプラインやワークフローのプロトタイピングに役立ちます。
3

デュアルアームキャリブレーション

L1 アームは、デュアル エンコーダー フィードバックと FOC 制御を備えた MIT モーター プロトコルを使用します。 キャリブレーションによりホーム ポジションが設定され、完全な ±0.02 mm の精度仕様が検証されます。

ROS2 ジョイントの状態を確認する

ros2 topic list
ros2 topic echo /joint_states    # verify all 16 DOF are publishing

モーションプランニングのためにMoveIt2を起動

ros2 launch l1_moveit l1_moveit.launch.py
# Opens RViz with full dual-arm URDF, collision checking, and Cartesian planning

ホームポジションの校正

  • MoveIt2 RViz パネルで、 企画 タブ
  • を選択します。 両腕の名前付きターゲット
  • クリック 計画と実行 — 腕は中立の伸長位置に移動する必要があります
  • ジョイントの状態が端末の予想されるホーム構成と一致することを確認します。

グリッパーの校正

# Open grippers fully
ros2 topic pub /left_gripper/cmd std_msgs/Float32 "{data: 0.0}"
ros2 topic pub /right_gripper/cmd std_msgs/Float32 "{data: 0.0}"

# Close to 50% — verify 8Nm grippers engage smoothly
ros2 topic pub /left_gripper/cmd std_msgs/Float32 "{data: 0.5}"
ros2 topic pub /right_gripper/cmd std_msgs/Float32 "{data: 0.5}"
4

移動基地ナビゲーション

WASDキーボードドライブテスト

ブラウザーのテロップ パネルを開き、WASD キーを使用して差動ベースを駆動します。 速度スケーリングはパネル スライダー (10%、50%、100%) で調整できます。

# Or command directly via ROS2 Twist
ros2 topic pub /base/cmd_vel geometry_msgs/Twist \
  "{linear: {x: 0.3, y: 0.0, z: 0.0}, angular: {x: 0.0, y: 0.0, z: 0.0}}"

# Stop
ros2 topic pub /base/cmd_vel geometry_msgs/Twist \
  "{linear: {x: 0.0, y: 0.0, z: 0.0}, angular: {x: 0.0, y: 0.0, z: 0.0}}"

リフト範囲テスト

ブラウザーのテレオペ パネルの垂直スライダーを使用して、30 mm/s で全リフト範囲 (106 ~ 162 cm) をテストします。 あらゆる範囲でバインドや研磨がなくスムーズな動作を確認します。

# Monitor lift height
ros2 topic echo /lift/state   # current height in meters
安全性 ロボットが移動しているときは、周囲の人がアームの作業スペースに近づかないようにしてください。 L1 は最大速度 2 m/s に達します。10% の速度スケーリングでテストを開始します。
5

最初の操作タスク

ブラウザ テロップ パネル コントロール

  • デュアルアームビュー: 両方の 7-DOF アームのリアルタイム 3D 視覚化 - 関節角度、エンドエフェクターのポーズ (6D)、および 10ms 未満の更新レートでのグリッパーの状態
  • エンドエフェクターモードセレクター: アームごとに独立してスイッチ: グリッパー (デフォルト 8Nm)、器用なハンド、または吸盤
  • カメラフィード: 胸部カメラ (Developer+)、手首カメラ左/右 (Developer Max)

MoveIt2 による簡単なピックアンドプレイス

from roboticscenter import L1Robot

robot = L1Robot.connect()

# Move left arm to approach pose
robot.left_arm.move_to(x=0.45, y=0.15, z=0.30, roll=0, pitch=90, yaw=0)

# Open left gripper
robot.left_arm.gripper.open()

# Move down to grasp
robot.left_arm.move_to(x=0.45, y=0.15, z=0.05, roll=0, pitch=90, yaw=0)

# Close gripper to grasp
robot.left_arm.gripper.close(force=0.6)

# Lift
robot.left_arm.move_to(x=0.45, y=0.15, z=0.35, roll=0, pitch=90, yaw=0)

VR 遠隔操作 (Developer Pro および Max)

OpenXR 互換ヘッドセットを接続して実行します rc vr --session RC-XXXX-XXXX 推定された接触力に比例する触覚フィードバックを使用して、ハンド コントローラーのポーズをデカルト空間内の各アームのエンドエフェクターに直接マッピングします。

6

データ収集とワンクリックパイプライン

rc connect セッションは名前付きのデータ収集単位です。 セッションは閉じるときに Fearless Platform ワークスペースに自動アップロードされます。手動でエクスポートする手順は必要ありません。

フレームごとに何がキャプチャされるか

  • ジョイントデータ — マイクロ秒のタイムスタンプ付き、~500Hz での 16 DOF すべての位置、速度、および努力
  • カメラストリーム — 胸部 RGB (Developer+)、手首 RGB (Developer Max) — タイムスタンプが付けられ、±1ms 以内で関節データと同期されます
  • 力・接触 — モーター電流からグリッパージョーの力を推定
  • 基本状態 — ホイールオドメトリ、線形/角速度、リフト高さ
  • オペレータのアクション — 模倣学習用の生のテレオペ コマンド ストリーム

収集中のエピソードのラベル付け

  • プレス 空間 ブラウザパネルでエピソードの境界をマークする
  • プレス L 現在のフレームにカスタム ラベル文字列の注釈を付けるには

クラウドブリッジ用のROS2エージェント

# Run on the L1's onboard computer to bridge topics to the platform
python l1_robot_agent.py \
  --backend wss://platform.roboticscenter.ai \
  --session RC-XXXX-XXXX \
  --ros2

データセットのエクスポート形式

クリーンアップされ、注釈が付けられたセッションは、LeRobot 形式 (HDF5 + JSON マニフェスト)、RLDS、または生の JSONL + MP4 としてエクスポートされます。 を使用します。 データ プラットフォームのタブでエクスポートとダウンロードを設定します。

ワンクリックパイプライン セッションが終了したら、プラットフォーム パイプラインを使用します: Clean → Annotate → Train (ACT、Diffusion Policy、または VLA)。 Developer Pro および Max レベルでは、VLA トレーニングのロックが解除されます。 開発者層は ACT と拡散ポリシーをサポートします。
← 概要に戻る 完全な仕様 →

セットアップについてサポートが必要ですか?

コミュニティ フォーラムにアクセスするか、SVRC サポートにお問い合わせください。米国向けの保証と SDK アクセスは当社が対応します。