101を組み立てて動かしてみた – Seeed K.K. エンジニアブログ

Seeed K.K.の松岡です。

最近、一部界隈でLeRobotプロジェクトの模倣学習が盛り上がっています。人の動きをロボットに学習させるという仕組みが面白そうだなと思いつつ、ロボット全くわからないので遠目に見ていました。

そんな中、Seeedが販売しているSO-101の部品セットが手元に来たので、組み立ててみました。丸一日かかりましたが、無事に完成し、とりあえずテレオペを動かすことができました。

LeRobotプロジェクトは、Hugging Faceが主導するオープンソースのロボティクス教育・研究プロジェクトです。実世界のロボット開発を誰でも手軽に始められることを目指して活動しています。

LeRobotプロジェクトの特徴のひとつに、模倣学習があります。リーダーアームを人間が操作し、その動きをフォロワーアームが追従することで軌道データを収集します。このデータを使って模倣学習を行うことで、ロボットが人間の操作を再現できるようになります。

どんな感じに動くのかは、今年6月に開催されたLeRobotプロジェクトのワールドワイドハッカソンの受賞作品動画から感じることができます。なんかすごい。やってみたい。

huggingface.co

LeRobotプロジェクトはいくつかのロボットアームに対応していますが、現在の定番はSO-101です。SO-101は、RobotStudioが設計した、LeRobotプロジェクトに対応したオープンソースのロボットアームです。正式な名称?は、Standard Open-101 Armsで、SO-101とかSO-ARM101と呼ばれています。

SO-101は、情報がネットに公開されていて安く作り上げることができますし(電子部品3Dパーツ組立方法)、キットを購入してパッと手間をかけずに作ることもできます。

SO-101キットはいくつかの会社から販売されていますが、Seeedでも販売しています。次の3つのキットが出ています。

模倣学習を試すには、リーダーアームとフォロワーアームの2つのアームが必要ですが、キットの中にはリーダーアームとフォロワーアームの各1台分が入っています。つまり、3D Printed Skeletonにはリーダーアーム1台+フォロワーアーム1台の3Dパーツが入っていて、Servo Motor Kitにはリーダーアーム1台+フォロワーアーム1台の電子部品が入っています。

Servo Motor Kitは、無印Pro版があります。無印はリーダーアームとフォロワーアームの両方が5V品で構成されていて、Pro版はフォロワーアームが12V品(リーダーアームは5V品)が入っています。Pro版のほうが電圧が高いので、アームの力が強いです。

ここでは、次のキットを使います。

あと、ロボットアームを机に固定する治具が3D Printed Skeletonに入っていますが、強度がちょっと心細いので、Amazonでクランプを買いました。2個入りのを2セット。

  • x2 ホビークイックバークランプ ブラック 100mm 2個組 HQB-100-2P

それと、ロボットアームを動かすのにPCが必要です。わたしは部屋に転がっているreComputer Industrial J4012+Jetson Linux(Ubuntu)を使いました。

後記のサーボモーターのファームウェアアップデートではWindowsが必要で、結局、Surface Book 3+Windows 11も使うことに。😅

ネットでSO-101を検索すると多くの記事があるので、好みの記事を参考に組み立てます。
わたしは、主にnpakaさんの「SO-101 入門 (3) – アームの組み立て」を参考にしました。

note.com

1. サーボモーターにラベルを貼る

キットには、サーボモーター12台入っていますが、ギア比に違いがあり、どこのジョイントにどれを使うのかが決まっています。
間違えないように、あらかじめラベルを貼っておくと扱いやすいです。L~がリーダーアーム、F~がフォロワーアームで、ベースからアーム先端にむかって数字が増えるよう付番します。

https://wiki.seeedstudio.com/lerobot_so100m/#configure-the-motors

なお、ラベルはここ(下の写真)に貼ると、3Dパーツと組み合わせるときに剥がれたり擦れたりしないです。わたしは型番も貼りましたが、そこまでしなくても大丈夫です。

2. サーボモーターのファームウェアをアップデートする&IDを設定する

サーボモーターの中に入っているマイコンのファームウェアが古いと問題が出るらしいので、アップデートします。
さらに、ここでIDも各サーボモーターに設定しておきます。

サーボモーターの設定ツールFD1.9.8.5ををダウンロードして使います。公式Webよりもgiteeの方がバージョンが上でした。

サーボモーター1台だけを順番に接続して、設定ツールで設定します。ファームウェア更新の操作方法はABEJA Tech Blogの「ファームウェアの更新」を参考にしました。ID設定の操作方法は勘でw

3. アームを組み立てる

3Dパーツにサーボモーターを嵌めたりネジ止めして、アームを組み立てます。npakaさんの記事の「2.アームの組み立て」がわかりやすいです。

ジョイントによっては後からケーブルを接続しにくい箇所があるので、動画をじっくり見てから作業しましょう。特に注意してほしいのはジョイント5。モーター5挿入よりも先に3Dパーツをモーター4にネジ止めしてしまい、やり直しする羽目になりました🥲

4. サーボドライバ基板を固定する

最後に、アームの土台箇所にサーボドライバ基板を固定します。

がっ!、同梱している3Dパーツのネジ取付部分の穴径が大きくて、ネジが固定できない…😭

というわけで、ここのパーツは自作することにしました。
パーツを改善して本家へプルリク。ちょっと貢献👍


Seeedキットに同梱のパーツを変更するようリクエスト出したので、そのうち変わると思います。

PCにLeRobotプロジェクトのソフトウェアを入れて、SO-101を動かします。
からあげさんの丁寧な記事があり、そのとおりやるだけで動きました。

  1. LeRobotプロジェクトのソフトウェアをインストール -> 「リポジトリ動作確認」章
  2. キャリブレーション -> 「ロボットキャリブレーション」章
  3. テレオペレーション -> 「テレオペレーション(遠隔操作)」章

zenn.dev

日付 変更者 変更内容
2025/9/19 松岡 作成




Source link

関連記事

コメント

この記事へのコメントはありません。