15. はじめての歩行 🚶
ここまで来たあなたは、もう 半分エンジニア です ✨ 最後に、AI学習済みポリシで二足歩行させましょう。
🧠 学習済みポリシとは
機械学習で「歩き方」を覚えさせた結果が、.onnx という形式のファイルに保存されています。 本家リポジトリにある BEST_WALK_ONNX_2.onnx を使えば、自分で学習不要で歩かせられる。
ファイル: BEST_WALK_ONNX_2.onnx
役割 : センサー入力 → 各関節の指令角度を出力する
ネットワーク📥 ONNX ファイルの取得
bash
cd ~
git clone --depth=1 https://github.com/apirrone/Open_Duck_Mini.git
cp Open_Duck_Mini/BEST_WALK_ONNX_2.onnx ~/Open_Duck_Mini_Runtime/🦆 歩行開始
1️⃣ 安全な場所を確保
- 平らな床 (じゅうたんNG、つるつるすぎてもNG)
- 周囲1メートルに障害物なし
- 倒れても良いように 柔らかいクッション を周りに置く
- 充電ケーブルを抜く (歩く邪魔)
2️⃣ ロボットを立ち姿勢に置く
Step 7のstand.py で立たせる:
bash
cd ~/Open_Duck_Mini_Runtime
source venv/bin/activate
python3 stand.py立てたらOK。
3️⃣ 歩行スクリプトを起動
bash
python3 v2_rl_walk_mujoco.py --onnx_model_path BEST_WALK_ONNX_2.onnx倒れる準備を
最初は すぐ倒れる可能性 があります。常にロボットの近くで、すぐ電源スイッチを切れる体勢で待機。
歩けたら拍手 🎉
🎮 ゲームパッド操作 (任意)
ゲームパッドを Pi のUSBに繋ぐと、歩行方向をリアルタイム制御できる。
| 操作 | 動作 |
|---|---|
| 左スティック ↑↓ | 前後移動 |
| 左スティック ←→ | 左右移動 (横歩き) |
| 右スティック ←→ | 旋回 |
| × ボタン | 立ち止まる |
詳細は本家リポジトリの joystick.py を参照。
🎥 撮影のすすめ
初歩行は 記念撮影必須。
- 三脚 + スマホ で正面から撮る
- スローモーション撮影で歩行サイクルが分かる
- BGM付きで SNS にアップ → タグ
#OpenDuckMini
📊 ログを取る
歩行データを保存して、後で分析:
bash
python3 v2_rl_walk_mujoco.py --onnx_model_path BEST_WALK_ONNX_2.onnx --log walk_log.csvwalk_log.csv には:
- 時刻
- 各関節の指令角・実測角
- IMU の傾き
- フットスイッチの状態
が記録される。トラブルシューティングや、独自ポリシ学習の参考に。
🚀 次のステップ (発展)
A. 自分で機械学習してみる
Open_Duck_Playground リポジトリ で MuJoCo Playgroundベースの学習が試せる。 独自のロコモーション(歩き方)を作れる。
B. 表情を出す
LED目を点滅させたり、スピーカーから音を出したり。 expression.py 等のサンプルがRuntime内にある。
C. カメラで物体認識
TensorFlow Lite を入れて、目の前のものを認識させる。
D. SNS共有
#OpenDuckMini タグで他の人の作品を見られる。Discordコミュニティ参加もおすすめ。
✅ 完成おめでとうございます!
ハンダゴテすら触ったことのない状態から、二足歩行ロボットを完成させた。 これはまぎれもなく エンジニア・メイカー の仲間入りです 🎓
📝 達成記録
完成したら、社内Slack や Discord に投稿しよう:
- 完成までの所要時間
- 苦戦したポイント
- 改造ポイント
- 写真・動画
次の人が作るときの参考になる。
✅ 次のステップ
うまく動かないときは: 16. トラブルシューティング