Skip to content

필사 모드: ロボティクス開発 ROS 2 2026 — Nav2 / MoveIt / Gazebo / Isaac Sim / MuJoCo / LeRobot / GR00T 徹底ガイド

日本語
0%
정확도 0%
💡 왼쪽 원문을 읽으면서 오른쪽에 따라 써보세요. Tab 키로 힌트를 받을 수 있습니다.
원문 렌더가 준비되기 전까지 텍스트 가이드로 표시합니다.

プロローグ — ロボティクスの「ChatGPTモーメント」は本物だった

2022年11月にChatGPTが世に出たとき、多くのロボティクス研究者が同じ問いを口にした。「**私たちのChatGPTモーメントはいつ来るのか?**」 LLMがテキストでやったことをロボットが物理世界でやるには、データ・シミュレーション・ハードウェア・モデルの4軸が揃う必要があった。

2026年5月現在、その整合がほぼ完了している。

- **データ** — Hugging Face LeRobotデータセットハブが2024年10月にオープンし、1年半で数千のロボットデータセットが集まった。Open X-Embodimentコンソーシアムは22のロボットプラットフォーム、527スキル、100万件以上の軌跡を収集した。

- **シミュレーション** — NVIDIA Isaac Sim 5.0がOmniverse上でGPU加速の物理・レンダリングを提供し、MuJoCoがGoogle DeepMind買収後に完全オープンソース化され、Gazebo HarmonicがClassicの後を継いだ。

- **ハードウェア** — Tesla Optimus・Figure 02・1X NEO Beta・Unitree G1・Apptronik Apollo・Sanctuary Phoenixといったヒューマノイドが1~2万ドル帯で量産を始めた。

- **モデル** — Google RT-2(2023)、OpenVLA(2024)、Physical Intelligence π0(2024)、NVIDIA GR00T N1(2025)が次々に登場し、**VLA(Vision-Language-Action)モデル**という新カテゴリが定着した。

そしてその上に **ROS 2** が乗る。ROS 1は2025年5月にNoeticがEOLを迎えて事実上死に、ROS 2 Jazzy Jalisco(2024.05)、Kilted Kaiju(2025.05)、Lyrical Luth(2026.05予定)が年次LTSのリズムを確立した。

本稿は2026年5月時点のロボティクス開発スタックを — ROS 2からNav2・MoveIt 2・Gazebo・Isaac Sim・MuJoCo・LeRobot・GR00T・VLA・Foxgloveまで — 一息で整理する。

1章 · 2026年ロボティクスの地図 — ヒューマノイド・ブームとLLM+ロボット

まず全体像。2026年のロボティクスには4つの大きな潮流が同時に流れている。

1.1 ヒューマノイド・ブーム

2024〜2025年が「デモの年」だったとすれば、2026年は「量産の年」だ。

- **Tesla Optimus** — 2025年末ベータ出荷、2026年Q3に外部販売開始を目標。自社FSDチップで動作。

- **Figure 02** — OpenAIと協業し、BMWスパルタンバーグ工場に100台配備。

- **1X NEO Beta** — 2024年発表、2026年に家庭向け出荷を開始。価格約2万ドル。

- **Boston Dynamics Atlas (Electric)** — 2024年4月に油圧式Atlas引退、電動式Atlas登場。現代自動車に買収され、Hyundai Motor Groupのデータ・組立ラインで学習。

- **Unitree G1** — 中国Unitree、1.6万ドル。オープンAPIを提供。

- **Apptronik Apollo** — Mercedes-Benz工場に配備。

- **Sanctuary Phoenix** — カナダ、産業用ヒューマノイド第7世代。

1.2 シミュレーション優先学習(Sim-to-Real)

ヒューマノイドの最大の問題は **データ不足** だ。人間が一生で見聞きするデータはペタバイト級だが、ヒューマノイドが集めたデータはテラバイト級にとどまる。そこで登場したのが **シミュレーション優先学習** である。

NVIDIAのスローガンは「**3 Computers**」 — 学習コンピュータ(DGX)、シミュレーションコンピュータ(Omniverse/Isaac Sim)、実行コンピュータ(Jetson Thor)。Isaac Simで毎秒数千の並列環境を回し、強化学習で方策を学習し、その方策を実機に移す(sim-to-real)。

1.3 VLA — ロボットのGPTモーメント

2023年7月のGoogle DeepMind発表 **RT-2(Robotic Transformer 2)** が最初のシグナルだった。VLM(PaLI-X)を持ってきてアクション・トークンを出力するように微調整したところ、「絶滅した動物を拾え」のような自然言語命令に対し、未知のオブジェクトでも汎化した。

2024年6月にはスタンフォードの **OpenVLA(7B)** がオープンソースで登場し、2024年10月にはPhysical Intelligenceが **π0(パイ・ゼロ)** — Flow Matching ベースの7B VLA — を発表して、衣類を畳む・食器を洗うといった器用さ(dexterity)のデモを見せた。NVIDIAの **GR00T N1(2025)** はヒューマノイド専用に学習された17Bモデルである。

1.4 データの民主化 — Hugging Face LeRobot

2024年10月にHugging Faceが **LeRobot** を発表し、ロボティクスMLがChatGPT以前のNLPのような「秘密の花園」からGitHub水準まで開かれた。事前学習モデル、データセット、チュートリアル、SO-100/SO-101のような200ドル台の学習用ロボットアーム・キットまで一括で提供する。

2026 ロボティクス 4スタック

[ モデル層 ] RT-2 / OpenVLA / π0 / GR00T N1 / Helix

|

[ 学習層 ] LeRobot / Open X-Embodiment / RoboHive

|

[ シム層 ] Isaac Sim 5.0 / MuJoCo / Gazebo Harmonic / Webots

|

[ ミドル層 ] ROS 2 Jazzy/Kilted/Lyrical + Nav2 + MoveIt 2

|

[ ハード層 ] Optimus / Figure / 1X / Atlas / G1 / Apollo / Phoenix

|

[ 可視化 ] Foxglove Studio / RViz2 / PlotJuggler

各層を順にみていく。

2章 · ROS 2 Jazzy → Kilted → Lyrical — 1年に一度のLTS

2.1 ROS 1からROS 2へ — なぜ移ったか

ROS 1は2007年にWillow Garageで始まり、学術・研究の事実上の標準となった。しかし限界があった。

- **シングル・マスター(roscore)依存** — マスターが死ぬとすべてのノードが切れる。

- **リアルタイム性不足** — ロボティクス制御にはミリ秒級の決定性が必要だが、ROS 1は保証しなかった。

- **セキュリティ欠如** — 誰でも任意のトピックをpublish/subscribeできた。

- **Windows・組み込みサポートの薄さ**。

ROS 2はこれを最初から再設計した。

- **DDS(Data Distribution Service)** をミドルウェアに採用 — 産業用通信標準、マスター不要。

- **QoS(Quality of Service)** ポリシー — Reliability、Durability、Historyなど細かな制御。

- **DDS-Security** — 認証、暗号化、アクセス制御。

- **rclcpp/rclpy** — C++17 と Python 3 ベース。

2025年5月にROS 1 NoeticがEOLを迎え、ROS 1時代は公式に終わった。

2.2 ROS 2 LTSケイデンス — メーデー・リリース

ROS 2は毎年5月(Ubuntu LTSリリース直後)に新ディストリビューションを出す。偶数年は5年LTS、奇数年は2年非LTSだ。

| コードネーム | リリース | EOL | Ubuntu | 備考 |

|---|---|---|---|---|

| Foxy Fitzroy | 2020.06 | 2023.06 | 22.04 | 最初のLTS |

| Galactic Geochelone | 2021.05 | 2022.12 | 20.04 | 非LTS |

| Humble Hawksbill | 2022.05 | 2027.05 | 22.04 | LTS、最も普及 |

| Iron Irwini | 2023.05 | 2024.12 | 22.04 | 非LTS |

| Jazzy Jalisco | 2024.05 | 2029.05 | 24.04 | **LTS** |

| Kilted Kaiju | 2025.05 | 2026.12 | 24.04 | 非LTS |

| Lyrical Luth | 2026.05 | 2031.05 | 26.04(予想) | **LTS、まもなく** |

2026年5月現在は **Jazzy(本番)** と **Kilted(最新)** が主力で、Lyrical Luthがまもなく登場する。新規プロジェクトはJazzyから始めるのが無難だ。

2.3 ROS 2のコア概念 — 5分の復習

Python rclpy ノードの例

from rclpy.node import Node

from std_msgs.msg import String

class HelloPublisher(Node):

def __init__(self):

super().__init__('hello_publisher')

self.publisher = self.create_publisher(String, 'greetings', 10)

self.timer = self.create_timer(1.0, self.tick)

def tick(self):

msg = String()

msg.data = 'Hello, ROS 2 Jazzy'

self.publisher.publish(msg)

self.get_logger().info(f'Published: {msg.data}')

def main():

rclpy.init()

node = HelloPublisher()

rclpy.spin(node)

node.destroy_node()

rclpy.shutdown()

通信パターンは4つ。

1. **Topic** — pub/sub、非同期ストリーム(センサデータ、画像)。

2. **Service** — 同期RPC、短い要求/応答(パラメータ取得)。

3. **Action** — 長時間処理、フィードバック・キャンセル可(ナビゲーション、ピックアップ)。

4. **Parameter** — ノード設定、ランタイム変更可能。

2.4 ビルドシステム — colcon

ROS 2のビルドは `colcon`。ワークスペースの典型パターン。

ワークスペース作成

mkdir -p ros2_ws/src

cd ros2_ws

src にパッケージをクローン

cd src

git clone https://github.com/ros-planning/navigation2.git -b jazzy

cd ..

依存解決

rosdep install --from-paths src --ignore-src -r -y

ビルド(並列、symlinkで開発反復を高速化)

colcon build --symlink-install --parallel-workers $(nproc)

環境ソース

source install/setup.bash

2.5 変更点 — Jazzy → Kilted → Lyrical 移行ノート

Jazzy以降の主な変化。

- **Iceoryx2ミドルウェア** — Eclipse Iceoryx2がstable。共有メモリでマイクロ秒級のIPC。

- **Zenoh RMW** — Eclipse ZenohがROS 2の正式ミドルウェアに採用。マルチロボット・クラウドゲートウェイに強い。

- **rcl_logging改善** — 構造化ログ、JSON出力。

- **Python 3.12 デフォルト**。

- **Gazebo Sim統合** — `ros_gz` パッケージが1.0に。

3章 · Nav2 (Steve Macenski) — ナビゲーションスタック

3.1 Nav2とは

**Nav2(Navigation 2)** はROS 1の `move_base` をROS 2向けに再設計したナビゲーションスタックだ。Samsung Research America出身の **Steve Macenski** がメンテナで、現在はOpen Navigation LLCを通じてコンサルティングを行う。

Nav2は次を一括で提供する。

- **グローバルプランナ** — 出発→ゴール経路(Navfn、SmacPlanner、ThetaStar)。

- **ローカルプランナ(コントローラ)** — 経路追従、障害物回避(DWB、RPP、MPPI)。

- **Recovery Behaviors** — 詰まったときの後退・回転。

- **BT Navigator** — Behavior Treeで全体フローを制御。

- **Costmap 2D** — グローバル・ローカルのコストマップ。

- **Lifecycleノード** — configure/activate/deactivate ステートマシン。

3.2 Behavior Treeでナビゲーションを定義

Nav2の最大の特徴は **Behavior Tree(BT)**。ナビ全体のフローをXMLで定義する。

<!-- navigate_to_pose_w_replanning_and_recovery.xml -->

BTの利点はコードを変えずXMLだけで行動を再構成できること。デバッグも可視化しやすい(Grootなど)。

3.3 MPPIコントローラ — 2024年の標準

Nav2のローカルコントローラは複数あるが、2024年以降事実上標準になったのが **MPPI(Model Predictive Path Integral)コントローラ** だ。サンプリングベースMPCで、数千の軌跡を並列にシミュレートして最低コストを選ぶ。

nav2_params.yaml(MPPI部)

controller_server:

ros__parameters:

controller_plugins: ["FollowPath"]

FollowPath:

plugin: "nav2_mppi_controller::MPPIController"

time_steps: 56

model_dt: 0.05

batch_size: 2000

vx_std: 0.2

vy_std: 0.2

wz_std: 0.4

vx_max: 0.5

vx_min: -0.35

vy_max: 0.5

wz_max: 1.9

iteration_count: 1

prune_distance: 1.7

transform_tolerance: 0.1

temperature: 0.3

gamma: 0.015

motion_model: "DiffDrive"

visualize: false

critics:

- "ConstraintCritic"

- "ObstaclesCritic"

- "GoalCritic"

- "GoalAngleCritic"

- "PathAlignCritic"

- "PathFollowCritic"

- "PathAngleCritic"

- "PreferForwardCritic"

DWBやRegulated Pure Pursuitより回避・コーナリングが自然で、GPU加速でさらに高速化する。難点はチューニングパラメータが多いこと。

3.4 SLAM — Nav2と組み合わせる二択

地図のない環境ではSLAMを併走させる。

- **SLAM Toolbox**(Steve Macenski) — 2D LiDARベース、ライフロング・マッピング・ローカライズ。最も使われる。

- **RTAB-Map** — RGB-Dカメラベースの3D SLAM。ROS 2対応。

SLAM Toolboxを非同期モードで起動(マッピング)

ros2 launch slam_toolbox online_async_launch.py \

params_file:=./config/mapper_params_online_async.yaml \

use_sim_time:=true

地図を保存

ros2 service call /slam_toolbox/save_map slam_toolbox/srv/SaveMap "{name: {data: 'my_map'}}"

4章 · MoveIt 2 — モーションプランニング

4.1 MoveItが何をするか

**MoveIt** はロボットアーム(マニピュレータ)向けのモーションプランニング・フレームワークだ。入力は「エンドエフェクタを (x, y, z, roll, pitch, yaw) に送れ」のような目標で、出力は衝突なしにその姿勢に到達する関節軌跡。

内部では次を行う。

1. **IK(逆運動学)** — 目標姿勢から関節角を解く。

2. **衝突チェック** — 自己衝突 + 環境衝突。

3. **軌跡計画** — OMPL / STOMP / CHOMP / Pilz などのアルゴリズム。

4. **軌跡実行** — `ros2_control` 上のコントローラに送信。

4.2 MoveIt Setup Assistant

新しいロボットをMoveItに繋ぐ出発点は **Setup Assistant** のGUIだ。

ros2 launch moveit_setup_assistant setup_assistant.launch.py

URDF / Xacroを読み込むと、GUIで以下が可能。

- 自己衝突行列(Self-Collision Matrix)の自動生成。

- Planning Groupの定義(例:arm + gripper)。

- 事前定義姿勢の登録(home、ready)。

- エンドエフェクタの指定。

- コントローラ・センサ設定。

結果として `moveit_config` パッケージが生成される。

4.3 MoveIt 2 コード例 — pick and place

Python MoveIt 2 (moveit_py)

from moveit.planning import MoveItPy

from geometry_msgs.msg import PoseStamped

def main():

rclpy.init()

moveit = MoveItPy(node_name="moveit_py_demo")

arm = moveit.get_planning_component("manipulator")

target_pose = PoseStamped()

target_pose.header.frame_id = "base_link"

target_pose.pose.position.x = 0.4

target_pose.pose.position.y = 0.1

target_pose.pose.position.z = 0.5

target_pose.pose.orientation.w = 1.0

arm.set_start_state_to_current_state()

arm.set_goal_state(pose_stamped_msg=target_pose, pose_link="tool0")

plan_result = arm.plan()

if plan_result:

robot_trajectory = plan_result.trajectory

moveit.execute(robot_trajectory, controllers=[])

else:

print("Planning failed")

moveit.shutdown()

rclpy.shutdown()

if __name__ == "__main__":

main()

C++ APIでは `MoveGroupInterface` が最も一般的。どちらも同じバックエンド(OMPL)を呼ぶ。

4.4 OMPL vs STOMP vs Pilz

| プランナ | 種類 | 長所 | 短所 |

|---|---|---|---|

| **OMPL**(RRTConnect、PRM) | サンプリング | 高次元に強い | 経路がガタつく、後処理必要 |

| **STOMP** | 最適化 | 滑らかな経路 | 初期解が必要、遅い |

| **CHOMP** | 最適化 | 滑らか | 局所解 |

| **Pilz Industrial Motion Planner** | 決定論的 | LIN/CIRC/PTP、産業用 | 一般動作には不向き |

既定はRRTConnectで始め、産業用反復動作にはPilzを使う。

4.5 ros2_controlとの接続

MoveIt 2は計画だけを行い、実行は `ros2_control` が担当する。両者の標準インターフェースが **JointTrajectoryController** だ。

controller_manager 設定

controller_manager:

ros__parameters:

update_rate: 100

joint_trajectory_controller:

type: joint_trajectory_controller/JointTrajectoryController

joint_trajectory_controller:

ros__parameters:

joints:

- shoulder_pan_joint

- shoulder_lift_joint

- elbow_joint

- wrist_1_joint

- wrist_2_joint

- wrist_3_joint

command_interfaces:

- position

state_interfaces:

- position

- velocity

5章 · Gazebo Harmonic — シミュレータの標準

5.1 Gazebo Classicの終焉とNew Gazeboの誕生

ROSユーザにとってお馴染みの「**Gazebo**」は2つの異なるソフトウェアだ。

- **Gazebo Classic**(gazebo7〜gazebo11) — 2002年開始、2025年1月EOL。

- **New Gazebo**(Citadel、Edifice、Fortress、Garden、Harmonic) — Ignition Roboticsが一から書き直したもの。2022年にIgnitionブランドを捨て、Gazeboの名前を取り戻した。

2026年現在、新規プロジェクトは無条件で **New Gazebo Harmonic(2023.09 LTS、2028までサポート)** を選ぶ。

5.2 Gazebo Harmonicの特徴

- **gz-sim** — シミュレーション・エンジン、ECS(Entity-Component-System)ベース。

- **DART** がデフォルト物理エンジン(Bullet・ODEも選択可)。

- **OGRE 2** レンダラ — Metal / Vulkan / OpenGL。

- **SDFormat 1.10** — ワールド・ロボット記述フォーマット。

- **GUI** — Qtベース、プラグインで拡張。

- **ROS 2連携** — `ros_gz_bridge` でトピックをマッピング。

5.3 SDFワールド例

<?xml version="1.0"?>

5.4 ros_gz_bridgeでROS 2トピックを連結

GazeboのトピックはGazebo Transport(別ミドルウェア)を使い、ROS 2はDDSを使う。両者を繋ぐのが `ros_gz_bridge` だ。

/cmd_vel を双方向にマップ

ros2 run ros_gz_bridge parameter_bridge \

/cmd_vel@geometry_msgs/msg/Twist@gz.msgs.Twist \

/odom@nav_msgs/msg/Odometry[gz.msgs.Odometry \

/scan@sensor_msgs/msg/LaserScan[gz.msgs.LaserScan

5.5 限界 — なぜIsaac Simが同時に登場したか

Gazebo Harmonicは優秀だが、限界がある。

- **GPU活用** — レンダリングはGPUだが、物理は依然CPU。数十〜数百の並列環境は難しい。

- **フォトリアル・レンダリング** — ビジョン学習用合成データには不足。

- **ソフトボディ・流体** — 限定的。

ここをNVIDIA Isaac Simが埋める。

6章 · Isaac Sim 5.0 (NVIDIA Omniverse) + Isaac ROS

6.1 Isaac Simの何が違うか

NVIDIA **Isaac Sim** はOmniverse上に作られたロボットシミュレータだ。2026年1月に **Isaac Sim 5.0** がリリースされ、コア特徴は次の通り。

- **PhysX 5** — GPU加速物理、数千の並列環境を実行。

- **RTXパストレーシング** — フォトリアル・レンダリング、ML学習用合成データに最適。

- **OpenUSD** ベースのシーングラフ — Pixar / Apple / Adobeが共同で推す標準。

- **Isaac Lab** — 強化学習フレームワーク、Gym互換。

- **GR00T統合** — ヒューマノイド・ファウンデーションモデルのデータ生成。

6.2 Isaac Lab強化学習コード(簡易例)

Isaac LabでCartpole RL環境を作る(概念コード)

from omni.isaac.lab.envs import ManagerBasedRLEnv

from omni.isaac.lab.scene import InteractiveSceneCfg

from omni.isaac.lab.assets import ArticulationCfg

from omni.isaac.lab.terrains import TerrainImporterCfg

class CartpoleSceneCfg(InteractiveSceneCfg):

cartpole = ArticulationCfg(

prim_path="/World/envs/env_.*/Cartpole",

usd_path="omniverse://localhost/NVIDIA/Assets/Robots/Cartpole/cartpole.usd",

)

env_cfg = ManagerBasedRLEnvCfg(

scene=CartpoleSceneCfg(num_envs=4096, env_spacing=4.0),

sim={"dt": 1/120, "device": "cuda:0"},

)

env = ManagerBasedRLEnv(cfg=env_cfg)

PPOで学習

from skrl.agents.torch.ppo import PPO

agent = PPO(models=..., memory=..., cfg={"learning_epochs": 8})

agent.train(env, timesteps=1_000_000)

4096個の並列環境をRTX 4090一枚で回せば、数日で方策が収束する。同じことをGazeboでやるには数十台のCPUサーバが必要だ。

6.3 Isaac ROS — NVIDIAのROS 2アクセラレータ

**Isaac ROS** はIsaac Simとは別に、NVIDIAがROS 2パッケージをCUDA加速したコレクションである。

| パッケージ | 機能 | 加速 |

|---|---|---|

| `isaac_ros_visual_slam` | RGB-DビジュアルSLAM | GPU |

| `isaac_ros_nvblox` | 3D再構成・占有グリッド | GPU |

| `isaac_ros_apriltag` | AprilTag検出 | GPU |

| `isaac_ros_centerpose` | 6DOF姿勢推定 | TensorRT |

| `isaac_ros_dnn_image_encoder` | カメラ→ML前処理 | GPU |

Jetson Orin・Thorボードに最適化されており、同じ知覚パイプラインがCPU比10〜30倍高速。

6.4 OpenUSDがロボティクスに入ってきた

**OpenUSD(Universal Scene Description)** はピクサーが作り、2023年にAOUSD(Alliance for OpenUSD)として標準化されたシーン記述フォーマットだ。映画・ゲーム発祥だが、NVIDIAがロボティクスの標準として推進している。

- シーン・アセット・マテリアル・物理を **単一のグラフ** で表現。

- レイヤリング(ベース + 差分) — 複数チームが同じシーンを同時に編集。

- Python API。

- Isaac Sim・Blender・Maya・Houdiniすべてが対応。

URDF / SDFはロボット1台を定義するには十分だが、工場や都市のような大規模環境を表現するには弱い。USDがそれを代替する可能性が高い。

7章 · MuJoCo (DeepMind) — 物理シミュレーション

7.1 MuJoCoの歴史 — Roboti LLC → DeepMind買収 → オープンソース化

**MuJoCo(Multi-Joint dynamics with Contact)** はEmo Todorovが2010年代初頭に作った物理エンジンだ。当初は有料の商用ソフトウェア(Roboti LLC)で、OpenAI Gymの一部環境(Humanoid、HalfCheetah)がMuJoCo上で動いていた。学生ライセンスはあったが商用は高価だった。

2021年10月、Google DeepMindがMuJoCoを買収し、**完全無料/オープンソース(Apache 2.0)** にした。これが強化学習・ロボティクス研究の参入障壁を大きく下げた。

7.2 MuJoCoの強み

- **接触動力学** — 摩擦・衝撃が他のエンジンより正確で安定。

- **高速** — 並列シミュレーションに最適化、GPUバックエンド(MJX)あり。

- **決定性** — 同じ入力に同じ出力(RLの再現性に重要)。

- **MJCF** — XMLベースのモデル記述、URDFより簡潔。

7.3 MJCFの例(humanoid)

<!-- 左側も同様 -->

7.4 MJX — JAXバックエンドでGPU加速

2024年に登場した **MJX** はJAXベースのMuJoCoで、GPU/TPU上で数万の環境を同時にシミュレートできる。Brax(Google)やIsaacGymと同カテゴリ。

from mujoco import mjx

mj_model = mujoco.MjModel.from_xml_path("humanoid.xml")

mjx_model = mjx.put_model(mj_model)

4096個の環境を並列シミュレーション

batch_size = 4096

keys = jax.random.split(jax.random.PRNGKey(0), batch_size)

@jax.jit

@jax.vmap

def reset(key):

data = mjx.make_data(mjx_model)

return data

@jax.jit

@jax.vmap

def step(data, action):

data = data.replace(ctrl=action)

data = mjx.step(mjx_model, data)

return data

batch_data = reset(keys)

actions = jax.numpy.zeros((batch_size, mj_model.nu))

for _ in range(1000):

batch_data = step(batch_data, actions)

7.5 MuJoCo Menagerie — 公式ロボット集

DeepMindがメンテする **MuJoCo Menagerie** リポには産業用ロボットの検証済みMJCFがある。

- Unitree H1、G1、Go2

- Boston Dynamics Spot

- Franka Emika Panda

- KUKA iiwa14

- Shadow Dexterous Hand

- Anybotics Anymal C

- Universal Robots UR5e / UR10e

これをそのまま強化学習や模倣学習のシミュレーションに投入できる。

8章 · Webots (Cyberbotics) — 軽量な選択肢

8.1 Webotsの位置

**Webots** はスイスのCyberbotics社が1996年から開発してきたロボットシミュレータ。2018年にApache 2.0でオープンソース化された。

Gazebo・Isaac Sim・MuJoCoがあるのに、なぜWebotsを使うのか。

- **軽量** — Gazebo Harmonicですらインストールが面倒だが、Webotsは単一パッケージで済む。

- **教育用途** — RoboCup・DARPA Subterranean・DJI RoboMasterなどの大会で標準。

- **豊富な組み込みロボット** — 100種以上のロボットモデルが標準提供(e-puck、NAO、Pioneer、TurtleBot)。

- **C / C++ / Python / Java / MATLAB / ROS / ROS 2** すべて対応。

8.2 Webotsコントローラの例

Webots Python コントローラ

from controller import Robot

TIME_STEP = 32

MAX_SPEED = 6.28

robot = Robot()

left_motor = robot.getDevice("left wheel motor")

right_motor = robot.getDevice("right wheel motor")

left_motor.setPosition(float('inf'))

right_motor.setPosition(float('inf'))

ds_left = robot.getDevice("ds_left")

ds_right = robot.getDevice("ds_right")

ds_left.enable(TIME_STEP)

ds_right.enable(TIME_STEP)

while robot.step(TIME_STEP) != -1:

left = ds_left.getValue()

right = ds_right.getValue()

if left < 100:

left_motor.setVelocity(-MAX_SPEED * 0.5)

right_motor.setVelocity(MAX_SPEED * 0.5)

elif right < 100:

left_motor.setVelocity(MAX_SPEED * 0.5)

right_motor.setVelocity(-MAX_SPEED * 0.5)

else:

left_motor.setVelocity(MAX_SPEED)

right_motor.setVelocity(MAX_SPEED)

8.3 どこで何を使うか

| 用途 | おすすめ |

|---|---|

| 学習・チュートリアル・教育 | Webots |

| 産業用モバイルロボット(ROS 2統合) | Gazebo Harmonic |

| 強化学習・ヒューマノイド・合成データ | Isaac Sim 5.0 |

| マニピュレーション・器用さ・接触多めの作業 | MuJoCo |

| 高速並列RL | MJX または Isaac Lab |

| マルチロボット・ドローン群 | Gazebo + Zenoh |

9章 · Hugging Face LeRobot (2024.10) — ロボティクスMLの民主化

9.1 LeRobot登場の背景

2024年10月、Hugging Faceが **LeRobot** を発表した。キャッチフレーズは「**Robotics for everyone**」。コアは次を一括で提供することだ。

- **事前学習モデル** — π0、ACT、Diffusion Policy、TDMPCなど。

- **データセットハブ** — Open X-Embodiment・BridgeData V2・DROIDがhf-datasets形式で。

- **安価なハードキット** — SO-100(200ドル台)、SO-101、Koch v1.1、Stanford Mobile Aloha クローン。

- **チュートリアル** — Colabで30分以内に模倣学習を一周。

ポイントは **PyTorch + Hugging Faceエコシステムとの完全統合**。NLPでTransformersがやったことを、ロボティクスでやろうとしている。

9.2 LeRobotデータパイプライン

LeRobotデータセットの読み込み

from lerobot.common.datasets.lerobot_dataset import LeRobotDataset

dataset = LeRobotDataset("lerobot/aloha_static_coffee")

print(dataset.meta.info)

エピソードを1つ取得

episode = dataset[0]

print(episode["observation.image.cam_high"].shape)

print(episode["action"].shape)

9.3 ACT模倣学習

ACT(Action Chunking Transformer)はStanford Mobile Alohaチームが作った模倣学習ベースライン。LeRobot内でそのまま学習可能。

SO-100アームでデータ収集

python lerobot/scripts/control_robot.py record \

--robot.type=so100 \

--control.type=record \

--control.fps=30 \

--control.repo_id=youngju/so100_pick_and_place \

--control.num_episodes=50 \

--control.warmup_time_s=5 \

--control.episode_time_s=30 \

--control.push_to_hub=true

ACT 方策を学習

python lerobot/scripts/train.py \

policy=act \

dataset_repo_id=youngju/so100_pick_and_place \

env=so100 \

training.offline_steps=80_000 \

training.batch_size=32 \

training.lr=1e-4

実機で評価

python lerobot/scripts/eval.py \

-p youngju/so100_pick_and_place_act \

eval.n_episodes=10

9.4 SO-100 — 200ドル台で始めるロボット学習

**SO-100**(オリジナル設計はThe Robot Studio)は5DOFのデスクトップアームで、部品コストは200〜300ドル台。3Dプリント可能な部品 + Dynamixel(Robotis)またはFeetechサーボで構成される。LeRobotにSO-100/101のドライバが標準搭載されており、データ収集→学習→実行のサイクルを家庭で回せる。

これがLeRobotの真のインパクト。NLPがChatGPT API以前は高価で難解だったように、ロボティクスも5万ドルの産業用アームの上でしか研究できなかった。それが今や300ドルに下がった。

10章 · NVIDIA GR00T — ヒューマノイド・ファウンデーションモデル

10.1 Project GR00Tの始まり

2024年3月のGTCでJensen Huangが発表した **Project GR00T(Generalist Robot 00 Technology)** は、NVIDIAのヒューマノイド・ファウンデーションモデル・プロジェクトだ。一言で言えば「**ヒューマノイドのGPT**」。

このプロジェクトは3つを束ねる。

1. **GR00T N1**(2025.03) — 17BパラメータVLA、初の公開重みモデル。

2. **Isaac Lab + Cosmos** — シミュレーション・合成データ生成。

3. **Jetson Thor** — ヒューマノイド搭載用推論SoC、2025年出荷。

10.2 GR00T N1アーキテクチャ

GR00T N1のコアは **System 1 / System 2 デュアルモード**(カーネマンの概念を直接借用)。

- **System 1(高速)** — Diffusion Transformer、100Hzでアクション出力。反射的運動制御。

- **System 2(低速)** — VLM(NVILA)、1〜10Hzで推論・計画。環境理解。

両者はトークン・クロスアテンションで接続される。人間がボールをキャッチする際の「ボールが落ちる → 手を伸ばす」という遅い計画(System 2)と、指の微調整(System 1)が同時に動くのと同じ構造。

10.3 GR00Tデータ・ピラミッド

NVIDIAのデータ戦略。

実機デモ(数十〜数百時間)

up (最少、最高コスト)

|

テレオペ(Apple Vision ProのようなVR)

|

シミュレーション(Isaac Sim並列環境)

|

Cosmos合成動画(数百万時間)

| (最多、最低コスト)

インターネット動画・ドキュメント

上から下へ進むほど量が増え、品質は下がる。GR00Tはインターネット動画で事前学習し、Cosmosで合成データを増強し、Isaac SimでRL微調整し、最後に実機デモでfinetuneする。

10.4 GR00T推論コード(概念)

GR00T推論(概念的インターフェース)

from gr00t import GR00TPolicy

policy = GR00TPolicy.from_pretrained("nvidia/gr00t-n1")

observation = {

"video.image_left": ..., # 左カメラ

"video.image_right": ..., # 右カメラ

"state.joint_pos": ..., # 28 DOFヒューマノイド

"language.instruction": "Pick up the red block and place it on the shelf"

}

System 2が5Hzで計画、System 1が50Hzでアクション

for t in range(simulation_steps):

action = policy.predict(observation) # 28次元アクションベクトル

new_observation = robot.step(action)

observation = new_observation

10.5 他のヒューマノイド・ファウンデーションモデル

- **Figure Helix**(2025.02) — Figure AIがOpenAIから独立後に自社開発。

- **1X World Model** — 家庭用ロボット向けの動画予測モデル。

- **Tesla Optimus FSD** — 自動運転スタックをヒューマノイドに移植。

- **Physical Intelligence π0** — 次世代π0.5を開発中。

11章 · VLAモデル — RT-2、OpenVLA、π0

11.1 VLAとは

**VLA(Vision-Language-Action)** モデルは、入力に画像(V)+ 言語命令(L)を受け取り、出力にアクション(A)トークンを返すモデルだ。LLMのnext-token predictionパターンをそのままアクションに適用したもの。

[ 画像フレーム ] -> vision encoder ----+

[ "Pick up apple" ] -> tokenizer ------+-> Transformer -> [ アクション・トークン ]

[ ロボット状態 ] -> projector ---------+ |

v

[ dx, dy, dz, gripper ]

11.2 RT-2(2023.07) — 最初のシグナル

Google DeepMindの **RT-2** はVLM(PaLI-X 55B、PaLM-E 12B)にRT-1のロボットデータを追加学習したもの。コツはアクションをトークン化してLLMの語彙に追加することだった。

- 入力:カメラ画像 + 「Move the empty can to the apple」

- 出力:`<action>+13 +127 -3 +1 0 0 0 1</action>`(6DOFデルタ + グリッパ)

衝撃的だったのは、初見のオブジェクト(絶滅動物カード)・初見の命令(「子犬の絵を移動せよ」)にも汎化したことだ。

11.3 OpenVLA(2024.06) — 初のオープンソースVLA

Stanford・UC Berkeley・Toyota Researchが **OpenVLA(7B)** を発表。Prismatic VLMベース。

- **Open X-Embodiment** の97万トラジェクトリで学習。

- A100 64枚で14日学習。

- 重み・コード・データすべて公開。

- LoRAで新ロボット・新タスクにfinetune可能。

from transformers import AutoModelForVision2Seq, AutoProcessor

from PIL import Image

processor = AutoProcessor.from_pretrained("openvla/openvla-7b", trust_remote_code=True)

vla = AutoModelForVision2Seq.from_pretrained(

"openvla/openvla-7b",

attn_implementation="flash_attention_2",

torch_dtype=torch.bfloat16,

trust_remote_code=True

).to("cuda:0")

image = Image.open("camera_view.png")

prompt = "In: What action should the robot take to pick up the cup?\nOut:"

inputs = processor(prompt, image).to("cuda:0", dtype=torch.bfloat16)

action = vla.predict_action(**inputs, unnorm_key="bridge_orig", do_sample=False)

print(action) # [dx, dy, dz, droll, dpitch, dyaw, gripper]

11.4 π0(Physical Intelligence、2024.10)

**Physical Intelligence(PI)** はSergey Levine・Chelsea Finnらが創業したスタートアップ。**π0(pi-zero)** は7BパラメータのFlow Matchingベース VLA。

核心的革新は **action chunking + flow matching**。

- 1回の推論で50msのアクションチャンク(50ステップ)を生成。

- diffusionではなくflow matchingで滑らかなアクション分布。

- 衣類を畳む・食器を洗う・箱を詰めるといった器用さデモ。

π0 推論の擬似コード

from openpi.models.pi0 import Pi0Policy

policy = Pi0Policy.from_checkpoint("pi0_base")

action_chunk = policy.sample_action(

images={"primary": img1, "wrist": img2},

instruction="Fold the blue shirt",

state=robot_state,

)

action_chunk: shape [50, action_dim]

for action in action_chunk:

robot.execute(action)

2025年4月にPIはπ0.5とπ1を公開し、一部の重みはHugging Faceに置かれている。

11.5 VLAモデル比較

| モデル | 開発元 | パラメータ | データ | オープン |

|---|---|---|---|---|

| RT-2 | Google DeepMind | 55B(PaLI-X) | RT-1 + Web | 非公開 |

| OpenVLA | Stanford / Berkeley | 7B | OXE 97万 | 完全公開 |

| π0 | Physical Intelligence | 7B | OXE + 独自 | 部分公開 |

| GR00T N1 | NVIDIA | 17B | 合成 + 実データ | 重み公開 |

| Figure Helix | Figure AI | 非公開 | 独自 | 非公開 |

| Tesla Optimus | Tesla | 非公開 | 独自 | 非公開 |

11.6 限界と次の一手

VLAがすべてを解くわけではない。2026年現在の限界は次の通り。

1. **長期ホライズン作業** — 30秒を超える作業は難しい。計画(System 2)が弱い。

2. **データ効率** — 新規タスクに数十〜数百デモが必要。one-shotには遠い。

3. **安全保証** — ニューラル方策の安全性を形式的に保証するのが難しい。

4. **ハードウェアとソフトウェアの結合** — 同じモデルが別ロボットでうまく動かない。

12章 · Foxglove Studio — データ可視化

12.1 RViz2の限界、Foxgloveの登場

ROS 2の基本可視化ツールは **RViz2** だ。十分強力だが限界がある。

- ROS 2に依存 — ROS以外のシステム(MAVLink、独自プロトコル)を見るのが難しい。

- ログ(rosbag)分析が弱い。

- 共同作業や共有が困難(スクリーンショットや動画しかない)。

- WebやタブレットでLが見えない。

**Foxglove Studio** は2021年にCruise出身者が創業した会社が作ったマルチプロトコル可視化ツールだ。

- **デスクトップ + Web + クラウド** を同時にサポート。

- **ROS 1、ROS 2、MCAP、MAVLink、MQTT、生WebSocket** すべて対応。

- **3D、Plot、Image、State Transitions、Map、Tab** など豊富なパネル。

- **MCAP** が事実上の新標準に(rosbag2の代替)。

12.2 MCAP — 新しいログ標準

**MCAP(Message Capture)** はFoxgloveが作ったログ・コンテナフォーマット。ROS 2 Jazzy以降、`rosbag2` のデフォルト保存形式がMCAPに変わった。

特徴。

- インデックス付きでランダムアクセスが速い。

- メッセージ定義自体を内蔵してself-describing。

- ROS・protobuf・JSON・flatbuffersに対応。

- Python / Go / Rust SDKあり。

rosbag2をMCAPで録画(Jazzyの既定)

ros2 bag record -a -s mcap -o my_session

MCAPの情報を表示

mcap info my_session/my_session_0.mcap

変換

mcap convert old.bag new.mcap

12.3 Foxgloveでデータを見る

デスクトップアプリでライブROS 2トピックを見る

- Foxglove Studio起動

- + Add connection -> ROS 2 -> 自動検出

またはWebアプリにMCAPファイルをドラッグアンドドロップ

https://app.foxglove.dev

共同作業に強い点は、チームメンバーが同じMCAPを開いて、同じタイムスタンプの同じパネルレイアウトを見られること。プルリクに「このバグは t=23.4s で発生」とリンクを貼れる。

12.4 PlotJuggler — 信号分析

数値データ(センサ・コントローラ出力)の時系列分析には **PlotJuggler** が最も便利だ。

sudo apt install ros-jazzy-plotjuggler-ros

ros2 run plotjuggler plotjuggler

CSV・rosbag2・MCAP・ライブトピックすべてをドラッグアンドドロップでプロットでき、数式で新規チャネル作成やフィルタリングが簡単。

13章 · 韓国・日本のロボティクス — 産業強国からヒューマノイドへ

13.1 韓国 — 現代自動車のBoston Dynamicsへの賭け

2021年12月、現代自動車グループがSoftBank Groupから **Boston Dynamics** を11億ドルで買収した。当時は高すぎるとの評価が多かったが、ヒューマノイド・ブームと共にその意味が明確になった。

- **Atlas(Electric)** — 2024年4月に油圧式Atlas引退、新型電動Atlasを公開。現代自動車のMetaplant(ジョージア州)で車両組立を学習中。

- **Spot** — 4足ロボット、現代自動車・起亜の工場警備・点検に活用。

- **Stretch** — 倉庫向け、箱ハンドリング。

韓国の他のプレイヤー。

- **Doosan Robotics** — 協働ロボット(cobot)M シリーズ・H シリーズ。韓国式チキン揚げロボットなどの応用で有名。

- **Rainbow Robotics** — KAISTのHUBO出身の創業。2024年にSamsung Electronicsが株式取得。自社ヒューマノイドRB-Y1を開発中。

- **Robotis** — Dynamixelスマートアクチュエータ。LeRobot SO-100・OpenManipulator・世界のロボット教育キットの事実上の標準。

- **Yujin Robot・Robotis** — モバイルロボット・教育用。

13.2 日本 — 産業用ロボットの長年の強国

日本は1980年代から産業用ロボット世界1位だ。2026年もその座は変わらない。

**産業用ロボット四天王**(2026)。

- **FANUC** — 黄色の産業用アーム、自動車・半導体ラインの標準。

- **Yaskawa Motoman** — 溶接・組立。

- **Kawasaki Robotics** — 川崎重工系。

- **Mitsubishi Electric** — MELFAシリーズ。

**サービス・ヒューマノイド側**。

- **Sony AIBO** — 1999年初出荷、2018年に復活(ERS-1000)。家庭用ロボットペットの象徴。

- **SoftBank Pepper** — 2014年発売、2021年に生産停止。2026年では博物館でしか見かけない。

- **Honda ASIMO** — 2018年に開発終了。ヒューマノイド第1世代の終わり。

- **Toyota T-HR3 / Human Support Robot(HSR)** — 研究・介護用途。

- **Kawasaki Kaleido** — 2022年に発表したヒューマノイド。

- **Preferred Networks** — AI / ロボティクス・スタートアップ、FANUCと協業。

13.3 二国のロボティクスの違う質感

| | 韓国 | 日本 |

|---|---|---|

| **強み** | ヒューマノイド(BD)、cobot(Doosan)、モーター(Robotis) | 産業用アーム(FANUC、Yaskawa)、精密モーター、自動車 |

| **弱み** | 産業用標準市場への参入遅れ | ヒューマノイド・AI統合が遅い |

| **R&D** | 政府主導、大企業中心 | 企業主導、職人文化 |

| **AI統合** | 早い(LLM・VLAを素早く採用) | 保守的 |

2026年の興味深い動向 — **現代-Boston Dynamics-Hyundai Mobis-Hyundai Wia** のラインが、米国ビッグテック(Tesla、Figure)と正面から競争できるほぼ唯一の非米陣営になったこと。日本は産業用では依然として強いが、ヒューマノイド・VLA競争では追う立場だ。

13.4 学習リソース

- 韓国 — KAIST・ソウル大学ロボティクスラボ、現代ロボティクス・アカデミー、ウアハン兄弟ロボットチーム。

- 日本 — Preferred Networksチャレンジ、Toyota Research Institute、AIST(産業技術総合研究所)。

14章 · 参考 / References

ROS 2公式 / Nav2 / MoveIt

- ROS 2公式 — https://docs.ros.org/

- ROS 2 Jazzy リリース — https://docs.ros.org/en/jazzy/

- ROS 2 Kilted リリース — https://docs.ros.org/en/kilted/

- ROS 2ディストリビューション計画 — https://docs.ros.org/en/rolling/Releases.html

- Nav2(Navigation 2) — https://docs.nav2.org/

- Nav2 GitHub — https://github.com/ros-navigation/navigation2

- Steve Macenski ブログ — https://www.opennav.org/

- MoveIt 2 — https://moveit.ai/

- MoveIt 2 チュートリアル — https://moveit.picknik.ai/

- ros2_control — https://control.ros.org/

- SLAM Toolbox — https://github.com/SteveMacenski/slam_toolbox

シミュレーション

- Gazebo(New) — https://gazebosim.org/

- Gazebo Harmonic リリース — https://gazebosim.org/docs/harmonic/

- Gazebo Classic EOL — https://gazebosim.org/docs/latest/getstarted/

- NVIDIA Isaac Sim — https://developer.nvidia.com/isaac/sim

- Isaac Lab — https://isaac-sim.github.io/IsaacLab/

- Isaac ROS — https://nvidia-isaac-ros.github.io/

- MuJoCo — https://mujoco.org/

- MuJoCo GitHub — https://github.com/google-deepmind/mujoco

- MuJoCo Menagerie — https://github.com/google-deepmind/mujoco_menagerie

- MJX ドキュメント — https://mujoco.readthedocs.io/en/stable/mjx.html

- Webots — https://cyberbotics.com/

- OpenUSD — https://openusd.org/

VLA / ファウンデーションモデル

- RT-2 論文 — https://robotics-transformer2.github.io/

- OpenVLA — https://openvla.github.io/

- OpenVLA GitHub — https://github.com/openvla/openvla

- Physical Intelligence — https://www.physicalintelligence.company/

- π0 ブログ — https://www.physicalintelligence.company/blog/pi0

- NVIDIA GR00T — https://developer.nvidia.com/project-gr00t

- GR00T N1発表 — https://blogs.nvidia.com/blog/gr00t-n1-foundation-model-humanoids/

- Hugging Face LeRobot — https://github.com/huggingface/lerobot

- LeRobot ブログ — https://huggingface.co/blog/lerobot

- Open X-Embodiment — https://robotics-transformer-x.github.io/

可視化 / データ

- Foxglove Studio — https://foxglove.dev/

- MCAPフォーマット — https://mcap.dev/

- PlotJuggler — https://github.com/facontidavide/PlotJuggler

- rosbag2 — https://github.com/ros2/rosbag2

ヒューマノイド・プラットフォーム

- Boston Dynamics — https://bostondynamics.com/

- Tesla Optimus — https://www.tesla.com/optimus

- Figure AI — https://www.figure.ai/

- 1X Technologies — https://www.1x.tech/

- Unitree — https://www.unitree.com/

- Apptronik Apollo — https://apptronik.com/

- Sanctuary AI — https://sanctuary.ai/

韓国 / 日本

- Doosan Robotics — https://www.doosanrobotics.com/

- Robotis — https://www.robotis.com/

- Rainbow Robotics — https://www.rainbow-robotics.com/

- FANUC — https://www.fanuc.com/

- Yaskawa Motoman — https://www.yaskawa.com/

- Kawasaki Robotics — https://kawasakirobotics.com/

- Toyota Research Institute — https://www.tri.global/

- Preferred Networks — https://www.preferred.jp/

終わりに — ロボティクスは本当に変わりつつある

2020年のロボティクス開発は「ROS 1 + Gazebo Classic + 手書きコントローラ + 博士号」だった。参入障壁が博士号だった。

2026年のロボティクス開発は「**ROS 2 Jazzy + Isaac Sim / MuJoCo + LeRobotから持ってきたVLA + 300ドルのSO-100**」だ。参入障壁はノートPCと好奇心だ。

この変化を推進する3つの力。

1. **シミュレーションの成熟** — Isaac Sim・MuJoCo・Gazebo Harmonicが産業グレードの品質を無料で提供。

2. **VLAの登場** — 手で書いていた認識・計画・制御を単一モデルに統合。

3. **民主化** — LeRobotがデータ・モデル・ハードウェアを一つのオープンパッケージで提供。

これが本当にヒューマノイドを家庭に届けるのか、それとも「5年で自動運転」のような過大宣伝の再演になるのかは、2027〜2028年が答えを示すだろう。しかし一つは確かだ — **2026年は、1年前と比べものにならない道具の山を抱えて、その答えを待つ。**

ROS 2を入れ、MuJoCoで一度シミュレーションを回し、LeRobotのACTチュートリアルを一度なぞってみよう。それが2026年ロボティクスに足を踏み入れる最も軽い方法だ。

현재 단락 (1/591)

2022年11月にChatGPTが世に出たとき、多くのロボティクス研究者が同じ問いを口にした。「**私たちのChatGPTモーメントはいつ来るのか?**」 LLMがテキストでやったことをロボットが物理...

작성 글자: 0원문 글자: 26,473작성 단락: 0/591