🤖

「DYNAMIXEL」を買って動かしてみるまで

2024/08/12に公開

DYNAMIXELとは

DYNAMIXEL(ダイナミクセル)は、便利なスマートモーターです。少しお高いですが、使いやすいため、結構周りに使っている人多いモーターです。ROBOTISの公式サイトから引用します。

DYNAMIXELは、ROBOTISが開発したロボットアクチュエータのブランドで、あらゆるロボットシステムに使用されます。名前「DYNAMIXEL」は「Dynamic(ダイナミック)」と「Cell(セル)」の2つの単語に由来しており、これらが組み合わさってオールインワンのロボットアクチュエータとなります。

ちょっと個人的に使ってみたかったので買ってみました。少し動かしたので簡単に使い方を記載しておきます。

ハードウェアの準備

個人で購入する場合は開発元のROBOTISからは買えないので販売代理店一覧等から購入先を選ぶことになります。

私は楽天で探してグラスロードカンパニーさんから購入しました。今回買ったのは以下の2つです。

OpenRB-150はArduino系のコントローラです。

モーターが1台でよいならOpenRB-150 Starter Kitがお得です。

単純にPCから動かしたいだけならUSBシリアル変換インターフェース U2D2がスタンダードで、標準ソフトで手軽に動かせると思いますが、今回は諸事情でOpenRB-150を使った制御を実施しました。

コントローラにソフトを書き込むPCは、USBインターフェースがありArduino IDEが動けば、基本何でもよいですが、今回はMacbookを使用しました。

ハードウェアの接続

OpenRB-150とPCとDYNAMIXELの接続、ピンヘッダの位置は、OpenRB-150の公式サイトで確認しましょう。

以下は接続した様子です(USB-CはPCに接続されています)。

ここで、Macで「アクセサリの接続を許可」のダイアログが一瞬だけ表示されて消えてしまう現象に悩まされたのでアクセサリの接続許可の設定を変更するを参考に以下のように「常に許可する」の設定にして対応しました。

ターミナルで以下コマンドを接続前後で実行して、接続したときに一つデバイスが増えたら成功です。

$ ls -l /dev/tty.*

私の場合は以下でした。

/dev/tty.usbmodem1101

Arduino IDEインストール

Macの場合は、以下コマンド実行して、Homebrewをインストールしてからインストールします。

$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

続いて、HomebrewでArduino IDEをインストールします。

$ brew install arduino-ide

Arduino IDEのバージョンは2.3.2でした。

Arduino IDEセットアップ

以下2つを参考にすればセットアップできます。

最低限やったことを記載します。

Preferenceから、Additional Board Manager URLsに以下を追記します。

https://raw.githubusercontent.com/ROBOTIS-GIT/OpenRB-150/master/package_openrb_index.json

追記した画面です。

以下を実施します。

Tools > Board > Boards ManagerよりArduino SAMDとOpenRBをインストール

Sketch > Include Library > Manage LibrariesよりDYNAMIXEL2Arduinoをインストール

インストールしたライブラリとバージョンは以下です。

  • Arduino SAMD 1.8.14
  • OpenRB-150 0.2.1
  • Dynamixel2Arduino 0.7.0

ToolsよりBoardをOpenRBに設定します。Portには、先程確認したデバイス名(今回は /dev/tty.usbmodem1101)を設定します。

動作テスト

サンプルコードで動作テストをしてみます。

File > Examples > DYNAMIXEL2Arduino > basic > position_modeを開いて書き込みます。

以下のように動いたらOKです。

https://x.com/karaage0703/status/1822942228161188314

DYNAMIXEL Wizard 2.0を使う

DYNAMIXEL Wizard 2.0というソフトを使うと、ファームウェアのアップデートができたり、手軽にサーボを動かして動作チェックしたり、IDを書き込んだりできるので便利です。

DYNAMIXEL Wizard 2.0は公式サイトからダウンロードしましょう。MacだとApp Storeからセットアップできます。

続いてOpenRB-150にはDYNAMIXEL Wizard 2.0で動かせるように専用のソフトを書き込みます。Arduino IDEでFile > Examples > OpenRB-150 > usb_to_dynamixelを開いて書き込みます。

DYNAMIXEL Wizard 2.0を起動して、まずはDYNAMIXELを探します(左上のスキャンボタンを押します)。全部スキャンしてもよいのですが、時間がかかるので設定から以下のように条件を絞るとすぐ見つかります。

見つかると、以下のように表示されます。

以下は接続したときの図です。右上のGUIで、モーターをビュンビュン回せたらOKです(TorqueとかLEDをチェックしたりして確認してください)。

IDの書き込み

DYNAMIXEL Wizard 2.0でIDを書き込む方法です。IDを選択して、右下のID選択画面でIDを選んでSaveボタンをクリックします。

位置(Position)設定

TorqueをEnableにした状態で、Goal Positionを設定します。図はデフォルトの位置設定です。

まとめ

試しに動かすところまでをまとめてみました。

DYNAMIXELは、モードが多く色々なことができるので、また試したら追記するなり記事を追加するなりします。

参考リンク

https://zenn.dev/tasada038/articles/e074cdcc746cc3

https://www.sato-susumu.com/entry/dynamixel-wizard

https://www.sato-susumu.com/entry/opencr

変更履歴

  • 2024/08/27 DYNAMIXEL Wizard 2.0の使い方を追記

Discussion