LeRobot SO-101のモーションをマニュアル設定するツールを作成しました
LeRobot SO-101をマニュアル動作
LeRobotといえば模倣学習なので、わざわざマニュアルでモーションを設定する人も少ない気がしますが、作ってしまったので公開します。
ソフトは以下です。MacでもLinuxでも動くと思います(まだMacでしか試してないですが、そのうちLinuxでも試します)。
前提は以下を参考にキャリブレーションまで設定していることが条件となります。
ロボットはSO-101のみ対応しています。Followerだけ使います。Leaderは不要です。
lerobot-toolsの使い方
READMEに書いてあるとおりです。
uvでのセットアップを推奨します。uv自体のセットアップは以下記事参照してください。
あとは、Motion Editorというソフトを使うと、各軸をマニュアルコントロールできます。動きは以下のような感じです。
起動したら、表示される操作ガイドに従って各軸を動かして、動かしたい姿勢(ポイント)が決まったらM
を押下してください。ポイントを指定し終わったらC
を押下すると、モーションファイルがmotions
ディレクトリに自動で生成されます。
続いて Motion Playerというソフトで、モーションファイルを指定すると、保存したモーション通りに再生できます。
このリポジトリはあくまでモーション設定とサンプルコードという位置づけで、モーション作ったらあとは、好きに使ってくださいという想定です。
PID制御について
PID制御設定については。以下の記事がとても参考になりました(感謝です)。
最初小さめのステップで動かしていたら、特定のモーターだけ、全然負方向(重力に逆らう方向)に動かなくて悩んでいましたが、原因はこれでした。
PID制御は、全部のモータをP=20 I=5 D=32に設定しています。Claude Codeが各モーター毎に設定できないと情けないこというので一旦サボってます。そのうち気が向いたり必要に駆られたらモーターごとに微調整するかもしれません(多分しない)。
まとめ
LeRobot SO-101をマニュアルで動かせるようになりました。
模倣学習は…まあそのうちに。
関連記事
Discussion