PMX Library for Arduino
PMX Library for Arduinoを公開します。
PMXサーボに接続されているArduino系のマイコンボードでこのライブラリを使用することができます。
PMXサーボとマイコンボードの接続には「RS-485変換基板」を使用することをお勧めします。接続方法は、サポート記事『PMXサーボを使ってみよう マイコンボードから制御「準備編」』をご参照ください。
その他、RS485規格の信号で通信機器で通信することもできますが、弊社純正品をご利用いただいていない場合の通信は保証いたしかねます。
2024.7.10 サーボのファームウェアバージョン1.1.0.0に対応するためプログラムを追記しました。バージョン1.0.1.2以前でもご利用いただけます。
Ver.1.1.0.0に合わせて、制御モードの組み合わせパターンを追加しました。また、PIDゲイン2、3とプリセットゲインを利用するための関数を追加しました。PMX本体のLEDを点灯/消灯できるようになりました。
PmxArduinoLib
├ examples
┃ ├ FactoryReset_Sample
┃ ┃ └FactoryReset_Sample_xxxx.ino
┃ ┃ .....
┃ └ (sample ...etc)
├ html(See to index_html)
├ src
┃ ├ PmxBaseClass.h
┃ ├ PmxBaseClass.cpp
┃ ┃ .....
┃ └ (src ...etc)
├ keywords.txt
├ library.properties
├ MIT_Licence.txt
└ readme.md
サンプルプログラムについて
このサンプルをArduino IDEで使用する場合は、ダウンロードしたzipファイルをそのままインクルードすることでご利用いただけます。「スケッチ」メニューの「ライブラリをインクルード」→「.ZIP形式のライブラリをインストール」の順に選択し、ダウンロードしたzipファイルを選択してください。
問題なくインクルードが完了しますと「ファイル」メニューの「スケッチ例」に「PMXArduinoLib」が表示されますので、サンプルプログラムを参考にご利用ください。
Arduino IDEを使用せず別の環境で開発する場合は、環境に合わせた設定をしてください。
なお、本サンプルはArduino Nano Everyで使用することを想定していますが、ピン番号やシリアルのポート番号を変更することにより多数のArduinoでご利用いただくことができます。詳しくはArduinoの仕様をご確認ください。
【ボードに合わせて設定を変更する個所】
・ENピン番号
1 |
const byte EN_PIN = 2; // EN(enable)ピンのピン番号 |
Arduinoに接続したデジタルI/Oを指定してください。
・シリアルポートの番号
1 |
PmxHardSerial pmx(&Serial1,EN_PIN,BAUDRATE,TIMEOUT); |
「&Serial1」がシリアルポートを指定する引数です。「RS-485変換基板」からArduinoに接続した「R」「D」のポート番号を指定してください。
【ご注意ください】
・このサンプルプログラムはSoftwareSerialには対応していません
・マイコンボードに応じて通信速度の上限があります。PMXの通信速度を変更する際、マイコンの上限以上の通信速度を設定してしまうと通信マイコンでは通信速度が変更できなくなりますのでご注意ください。
動作確認済み環境
・Arduino Nano Every
・Arduino UNO R3
※Arduino側のライブラリの都合によりR4では動作しません。
※Serialが1系統でプログラムの書き込みと実行を切り替えて使う必要があり、
デバック用にPCにデータを送ることができません。
※サンプルプログラムではPCに結果を出力していますので、書き変えてお使いください。
・Arduino Mega 2560 R3
・M5Stack Basic V.2.6 / 2.7
※M5系は、M5Stack Basic以外のStickなどSerialのピン配置が
変更できる関数には対応できていません。
Serial部分のプログラムを書き換えてお使いください。
・Teensy(4.0/4.1)
※「サンプルプログラムについて」の通りボードに合わせてENピン番号、シリアルポートの指定が必要です。
対応機種
リファレンス
ライブラリの各関数について下記で解説しています。
PMX Library for Arduino リファレンス
関連記事
PMXサーボを使ってみよう マイコンボードから制御「準備編」
【過去のライブラリ】
2024.2.16 サーボのファームウェアバージョン1.0.1.2に対応するためプログラムを追記しました。バージョン1.0.0.6でもご利用いただけます。
MemWRITEコマンドのみでよりシンプルに制御ができるようになりました。詳しくはサンプルプログラム『MemWRITE_MotorControl_Sample20240215.py』をご参照ください。
PMX-SCR-9204HVの詳細をみる PMX-SCR-9203HVの詳細をみる PMX-SCR-5204HVの詳細をみる PMX-SCR-5203HVの詳細をみる