目的で二つのシミュレーターを使い分ける
既存動作を触るだけならブラウザー版を使います。robotd、robotctl、IPC、ポリシー交換を調べる場合は duck-sim が対象です。制御ループより上を実機と同じコードで動かし、身体側だけを MuJoCo に置き換えます。
二つのリポジトリを同じ版で用意する
git clone https://github.com/pollen-robotics/microduck.git
git -C microduck checkout --detach e90389492bd4da42f60da343983e50cecd43b54b
git clone https://github.com/pollen-robotics/microduck_rl.git
git -C microduck_rl checkout --detach cb70b792312d559a4da09064d92009079671815f
cd microduck_rl
uv syncRL 側では uv sync により duck-body と ONNX Runtime を含む環境を作ります。配置が標準と異なる場合は DUCK_SIM_RL に絶対パスを渡します。既存作業を壊さないよう、確認用チェックアウトを分けてください。
一台を起動して診断を残す
cd /absolute/path/to/microduck
DUCK_SIM_RL=/absolute/path/to/microduck_rl scripts/duck-sim
scripts/duck-sim status
scripts/duck-sim drive
scripts/duck-sim ctl health
scripts/duck-sim realtime
scripts/duck-sim downdrive は通信と制御の短いスモークテストです。性能値として扱わず、status、health、realtime、両側のログを同じ記録に残します。実時間率が 1.0 を下回ると方策の時間条件も変わるため、台数、カメラ、表示の順で負荷を減らします。
boot は systemd を調べる時に使う
通常モードは方策とクライアント開発向けです。boot は systemd-nspawn 内で実サービスを起動し、更新、権限、再起動順を調べるための経路です。sudo と追加パッケージが必要なので、質問が systemd に関係しないなら通常モードから始めます。
報告には検証できない範囲も書く
Dynamixel バス、Bluetooth、カメラ ISP、NPU、エンコーダー、電源、造形物、床との接触はこの環境では確認できません。「指定版のデーモンシミュレーション」と明記し、実機結果と混ぜないでください。
出典と確認日
資料の確認日 2026年9月23日 · 原資料を確認