Edit on GitHub

イントロダクション

Arduino IDEは、OpenCRおよびOpenCM9.04に互換性がある開発ツールです。 OpenCM IDEは、ArduinoIDEに置き換えることができますが、可能であればArduino IDEを使用することを推奨します。
Arduino IDEを使用すると、ユーザーはスケッチを作成するときにDYNAMIXEL SDKDYNMAIXEL Workbenchを適用できます。

ソフトウェアのインストール

Linuxにインストール

USBポート設定

OpenCR

OpenCRのUSBポートがルート権限なしでArduino IDEのプログラムをアップロードできるようにします。

$ wget https://raw.githubusercontent.com/ROBOTIS-GIT/OpenCR/master/99-opencr-cdc.rules
$ sudo cp ./99-opencr-cdc.rules /etc/udev/rules.d/
$ sudo udevadm control --reload-rules
$ sudo udevadm trigger

OpenCM9.04

OpenCM9.04のUSBポートがルート権限無しでArduino IDEのプログラムをアップロードできるようにします。

wget https://raw.githubusercontent.com/ROBOTIS-GIT/OpenCM9.04/master/99-opencm-cdc.rules
sudo cp ./99-opencm-cdc.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules
sudo udevadm trigger

コンパイラ設定

OpenCR / OpenCM9.04ライブラリは、32ビットプラットフォーム用に構築されているため、64ビットPCの場合はArduino IDEに関連する32ビット関連のコンパイラが必要です。

$ sudo apt-get install libncurses5-dev:i386

Arduino IDEのインストール(Linux)

arduinoの公式ホームページからArduino IDEの最新バージョンをダウンロードしインストールします。 現在、OpenCRおよびOpenCM9.04はバージョン1.6.4以降と互換性があります。

https://www.arduino.cc/en/Main/Software

次に、ダウンロードしたファイルを目的のフォルダに解凍し、ターミナルからインストールファイルを実行します。 この場合、以下に示す例では、ユーザーの最上位フォルダー(~/)にフォルダツールを作成します。 このフォルダは、Arduino IDEフォルダとして機能します。

$ cd ~/tools/arduino-1.8.3
$ ./install.sh

インストールされているArduino IDEのファイルパスを、PATHと呼ばれる絶対パスとしてbashrcファイルに設定します。 ここでは、geditエディターの使用をお勧めします。 (必要に応じて、別のエディターを使用してください。)最後に、変更を適用します。

$ gedit ~/.bashrc
$ export PATH=$PATH:$HOME/tools/arduino-1.8.3
$ source ~/.bashrc

Arduino IDEの実行(Linux)

LinuxプラットフォームでArduino IDEを実行するには、次のようにターミナルに入力します。

$ arduino

Arduino IDEへのポーティング(Linux)

環境設定

Arduino IDEを実行した後、IDEのトップメニューでファイル → 設定をクリックします。 設定ウィンドウが表示されたら、次のリンクをコピーして追加のボードマネージャーのURLをテキストボックスに貼り付けます。 ボードに基づいて適切なファイルURLを選択してください。

OpenCR
https://raw.githubusercontent.com/ROBOTIS-GIT/OpenCR/master/arduino/opencr_release/package_opencr_index.json

OpenCM9.04
https://raw.githubusercontent.com/ROBOTIS-GIT/OpenCM9.04/master/arduino/opencm_release/package_opencm9.04_index.json

Boards Managerからボードパッケージをインストールする

ツール → ボード → ボードマネージャー をクリックします。 ネットワークの状態によっては、この手順に20分以上かかる場合があります。

OpenCR

テキストボックスにOpenCRと入力しOpenCR by ROBOTISパッケージを見つけます。 見つけたらインストールをクリックします。

インストール後、”INSTALLED”と表示されます。

OpenCR Boardがツール → ボードのリストにあるかどうかを確認します。 これをクリックしOpenCRボードのソースをインポートします。

OpenCM9.04

テキストボックスにOpenCM9.04と入力し、OpenCM9.04 by ROBOTISパッケージをみつけます。 見つけたらインストールをクリックします。

インストール後、”INSTALLED”と表示されます。

OpenCM9.04がツール → ボードのリストにあるか確認します。 これをクリックして、OpenCM9.04ボードのソースをインポートします。

ポート設定

このステップでは、プログラムアップロードのポート設定を示しています。 OpenCR/OpenCM9.04は、マイクロUSBポートを介してPCに接続する必要があります。

ツール → ポート → /dev/ttyACM0 を選択します。

警告:文字列 /dev/ttyACM0 の最後の桁の値 0 は、接続されているPC環境によって値が異なる場合があります。

Modemmanagerの削除

OpenCRのみがこの手順を必要とします。 OpenCM9.04を使用している場合は、この章をスキップしてください。

Arduino IDEでプログラミングし、プログラムをOpenCRにアップロードした後、OpenCRが再起動 → 再接続されます。 同時に、Linuxのモデム関連パッケージは、デバイスを管理するためにATコマンドを送信します。 このコマンドはOpenCRの接続エラーを示しているため、この手順を事前に実行する必要があります。

$ sudo apt-get purge modemmanager

Macにインストール

Arduino IDEのインストール(Mac)

arduinoの公式ホームページからArduino IDEの最新バージョンをダウンロードしインストールします。 現在、OpenCRおよびOpenCM9.04はバージョン1.6.4以降と互換性があります。

Arduino IDEの実行(Mac)

MacプラットフォームでArduino IDEを実行するには、次のようにArduino IDEアイコンをクリックします。

Arduino IDEのポーティング(Mac)

環境設定

Arduino IDEを実行した後、IDEのトップメニューでファイル → 設定をクリックします。 設定ウィンドウが表示されたら、次のリンクをコピーして追加のボードマネージャーのURLをテキストボックスに貼り付けます。 ボードに基づいて適切なファイルURLを選択してください。

OpenCR
https://raw.githubusercontent.com/ROBOTIS-GIT/OpenCR/master/arduino/opencr_release/package_opencr_index.json

OpenCM9.04
https://raw.githubusercontent.com/ROBOTIS-GIT/OpenCM9.04/master/arduino/opencm_release/package_opencm9.04_index.json

Boards Managerからボードパッケージをインストールする

ツール → ボード → ボードマネージャー をクリックします。 ネットワークの状態によっては、この手順に20分以上かかる場合があります。

OpenCR

テキストボックスにOpenCRと入力しOpenCR by ROBOTISパッケージを見つけます。 見つけたらインストールをクリックします。
インストール後、”INSTALLED”と表示されます。
OpenCR Boardがツール → ボードのリストにあるかどうかを確認します。 これをクリックしOpenCRボードのソースをインポートします。

OpenCM9.04

テキストボックスにOpenCM9.04と入力し、OpenCM9.04 by ROBOTISパッケージをみつけます。 見つけたらインストールをクリックします。

インストール後、”INSTALLED”と表示されます。

OpenCM9.04がツール → ボードのリストにあるか確認します。 これをクリックして、OpenCM9.04ボードのソースをインポートします。

ポート設定

このステップでは、プログラムアップロードのポート設定を示しています。 OpenCR/OpenCM9.04は、マイクロUSBポートを介してPCに接続する必要があります。
ツール → ポート → /dev/cu.usbmodem1411 を選択します。

警告:接続されているPC環境によっては、 /dev/cu.usbmodem1411 の値が異なる場合があります。

Windowsにインストール

ドライバーのインストール

WindowsでOpenCRおよびOpenCM9.04マイクロUSBポートをシリアルポートとして使用するには、USB CDCドライバーが必要です。 ST社が提供するUSBドライバをインストールできます。

http://www.st.com/en/development-tools/stsw-stm32102.html

Arduino IDEのインストール(Windows)

arduinoの公式ホームページからArduino IDEの最新バージョンをダウンロードしインストールします。 現在、OpenCRおよびOpenCM9.04はバージョン1.6.4以降と互換性があります。

Arduino IDE for Windowsにはインストール版と圧縮版がありますので、好みの方法でインストールしてください。

Arduino IDEへのポーティング(Windows)

Preferences

Arduino IDEを起動したら、IDEのトップメニューにある ファイル → 環境設定 をクリックします。環境設定ウィンドウが表示されたら、以下のリンクをコピーして、Additional Boards Manager URLsのテキストボックスに貼り付けます。(この作業には約20分かかります。)

OpenCR
https://raw.githubusercontent.com/ROBOTIS-GIT/OpenCR/master/arduino/opencr_release/package_opencr_index.json
OpenCM9.04
https://raw.githubusercontent.com/ROBOTIS-GIT/OpenCM9.04/master/arduino/opencm_release/package_opencm9.04_index.json

Boards Managerからボードパッケージをインストールする

ネットワークの状態によっては、この手順に20分以上かかる場合があります。

OpenCR

ツール → ボード → ボードマネージャー をクリックします。

テキストボックスにOpenCRと入力しOpenCR by ROBOTISパッケージを見つけます。 見つけたらインストールをクリックします。

インストール後、”INSTALLED”と表示されます。

OpenCR Boardがツール → ボードのリストにあるかどうかを確認します。 これをクリックしOpenCRボードのソースをインポートします。

OpenCM9.04

テキストボックスにOpenCM9.04と入力し、OpenCM9.04 by ROBOTISパッケージをみつけます。 見つけたらインストールをクリックします。

インストール後、”INSTALLED”と表示されます。

テキストボックスにOpenCM9.04と入力し、OpenCM9.04 by ROBOTISパッケージをみつけます。 見つけたらインストールをクリックします。

ポート設定

このステップでは、プログラムアップロード時のポート設定を行います。パソコンとOpenCRをUSBポートで接続する必要があります。 ツール → ポート → COM1を選択します。

注意 : COM1 の値は、PCに接続されている環境によって異なる場合があり 。

ライブラリAPI

Arduino IDEにライブラリを追加する方法は3つあります。

それぞれの方法は Arduino Official Guideに詳しく記載されていますので、必要に応じて参考にしてください。
以下にライブラリマネージャの使用例を示します。

ライブラリマネージャからDYNAMIXEL2Arduinoを検索し、ライブラリをインストールします。

DYNAMIXEL2Arduinoライブラリが正常にインストールされている場合、DYNAMIXELを制御するために役に立つサンプルプログラムは、DYNAMIXEL2Arduinoカテゴリで見つけることができます。

Dynamixel2Arduinoライブラリ

Dynamixel2Arduinoクラス

マスタークラス

Dynamixel2Arduinoクラスは、マスタークラスから以下のパブリック関数を継承しています。

OpenCM9.04 例

  1. LED
  2. Button
  3. Buzzer
  4. PWM
  5. EEPROM
  6. DYNAMIXEL Workbench
  7. Servo
  8. SD Card
  9. MS5540S
  10. MPU6050 DMP
  11. 0.96” OLED LCD

アドバンスドユーザー

ブートローダの書き込み(OpenCR)

注意:OpenCRブートローダーが更新された場合にのみ、ブートローダーの更新を実行してください。 製品にはすでにデフォルトのブートローダーがインストールされています。

OpenCRボードのメインMCUに使用されるSTM32F7xxは、DFU(Device Firmware Upgrade)をサポートしています。 これにより、主にブートローダーの初期化、リカバリーモード、ブートローダーの更新をUSBで行うことで、MCUの内蔵ブートローダー単体でDFUプロトコルで起動させることができるようになります。 USBでブートローダーを使用しても、他のJTAG機器を使用せずにブートローダーを使用できることが最大の利点です。 STLinkなどの書き込み/デバッグ機器を使用せずに、MCUに内蔵されたDFUモードを使用してファームウェアを書き込みます。

プログラマの設定

ツール → DFU-UTIL を選択

Run DFU mode.

ブートボタンが押されている間にリセットボタンを押してください。これによりDFUモードが起動します。

Linux

DFUモードに正常に入り、端末にlsusbを入力すると、STMicroelectronicsSTM Device in DFU Modeと表示されます。

Windows

DFUモードに正常に入り、デバイスマネージャーのUniversal Serial Bus devicesの下にSTM32 BOOTLOADERと表示されます。

Burn Bootloader

ツール >ブートローダーの書き込みをクリックして、ブートローダーを書き込みます。