RECore でモーターを動かしてみた

RECore はモーターを直接繋げるバッテリー付きマイコンボードで、Raspberry PiArduino よりも簡単にロボットが作れます。 先日、Lチカして遊んでみました が、今度はモーターを動かしてみました。 L チカは Arduino にもできますが、モーターを直接繋げるマイコンボードは RECore だけです。 結論から言えば、特にトラブルもなくすぐに動いて、すごく簡単でした!

組み立て

家に手頃なモーターがなかったので、タミヤのパーツを買ってきました。全部でだいたい 1200 円くらい。

写真のタイヤセットは 4 個セットのものですが、2 個しか使わないので、2 個セットを買うのがお得です。

f:id:aabe0:20211121162812j:plain

説明書にしたがって、ギヤボックスとボールキャスターを組み立てます。 RECore の底面にはタミヤギヤボックス用の穴が空いているので、適当な位置にねじ止めし、ボールキャスターは両面テープでくっつけます。

f:id:aabe0:20211121163302j:plain

モーターのコードはこんな感じで Motor Unit A につなぎます。 どっちが正回転でどっちが逆回転なのかはわかりませんが、そこは動作させてみて考えることにしましょう。

f:id:aabe0:20211121163904j:plain

f:id:aabe0:20211121164226p:plain

プログラム

公式チュートリアルのモーターの内容にしたがって、プログラムを作ります。

www.omniment.co.jp

ほとんどチュートリアルのままですが、速度を変えて方向転換するようにしてみます。

#include "RECoreLibrary.h"

RECoreLibrary recore;

void setup() {
  recore.setMotorType(MOTOR_UNIT_A, SINGLE_DC); // Unit A をシングルモードにする
  recore.setMotorCurrent(500); // 500mA
}

void loop() {
  recore.setMotorSpeed(0, 1.0);
  recore.setMotorSpeed(1, 1.0);
  delay(2000);
  recore.setMotorSpeed(0, 0.0);
  recore.setMotorSpeed(1, 1.0);
  delay(500);
}

タミヤのモーターに何アンペア流せるのか全くわかりませんが、適当に 500 mA で設定しました。 実際どれくらいがいいんでしょうね?詳しい人教えて。

書き込み&実行

書き込む前に Arduino IDE でボードが RECore になっていることを確認します。

f:id:aabe0:20211121170231p:plain

この状態だと SafeStart と言って、書き込んだ後に本体のタクトスイッチを押して、ユーザプログラムの実行を始める方式です。 RECore (without SafeStart) を選択すると、書き込んだ直後に実行が始まりますが、これだと USB ケーブルを引きずったまま走り出すので危険です。

書き込んだ後、RECore 本体の LED がフワフワ点滅するので、その状態でタクトスイッチを押すと、軽快に走り出します。

感想

本当に数行のプログラムで簡単にモーターを動かすことができました! びっくりするほど簡単で、むしろ拍子抜けしてしまいますね。 これが Arduino ならモータードライバーを経由して繋ぐ必要がありますし、自走させるためには電池も積まないといけません。 それ考えると、かなり簡略化されていると思います。

RECore はロボット用のマイコンボードなだけあって、ハード・ソフト共にモーターを使うことが非常に楽です。 これで何か面白いもの作りたいですね!まだ、アイディアはないですが。。。

store.omniment.co.jp

www.switch-science.com