BLEAD-TSHで遊ぼう!【作例集 モーターの無線遠隔制御編】

開発部のなーさんです。

突然ですが、
なーさんは子どものころ、そのころ流行っていた車のプラモデルやモーターでまっすぐ走る車のおもちゃで遊んでいたとき
いつかは「この車たちをラジコンのように動かしたい」と悶々としていました。

それからずいぶんと時を経ておとなになったなーさん。

このTSHがあれば、諦めていた夢が実現できることに気がつきました!!
ということで、まずは初歩的なモータ制御をやってみました。


下記は2019年9月現在の情報で執筆しています。
文中、画像中で使用されている商標等はそれぞれの企業、団体に帰属します。

つくったもの

こんな感じになります(音が出るので音量に気をつけて!)。

TSHを傾けると、そのアドバタイズを受信したBLE受信モジュール(マイコン)によって、TSHの加速度値に応じたモーター速度に可変させる、という仕組みになります。

TSHのアドバタイズをBLE受信モジュールで受けたあとは、
BLE受信モジュールが出力したPWM波形でトランジスタやFETをスイッチング(電流を通したり通さなかったりを高速で繰り返す動作)して平均電圧をコントロールします。

回路について

詳しいモーターコントロールの回路については、ネットで探してみてください。
主な部品は下記のものを使いました。BLE nano V2はもう販売終了なのが残念!

  • 制御回路:電源3.3V
  • BLE受信&PWM出力: RedBearLab製 BLE nano V2
  • PWMスイッチング素子: TOSHIBA製 2SK2232 MOSFET
  • 駆動回路:電源1.5V
  • ブラシ付きDCモーター: マブチ製 FA-130モーター

今回は、回転方向を固定にしたので、駆動回路はシンプルです。
またいろいろな制約があり2SK2232はBLE nano V2で直接駆動しています。
実践的な回路だと、まず小信号用トランジスタで電流を増幅してからモーター用のトランジスタやFETを駆動したり、制御側と駆動側の間をフォトカプラで絶縁したりします。

BLE受信モジュールのソフトウェア

BLE nano V2は、Arduino IDEで開発できるので利用しました。
サンプルにあったBLE_ScanReportのスケッチに下記の機能を追加しました。

  • 受信したTSHのアドバタイズ電波から加速度を抽出
  • 加速度からPWM信号のDuty比(電流を通す時間の割合)を決定
  • PWM信号を端子から出力

Duty比は、手前に倒せば増加、奥に倒せば減少という風にしました。

おわりに

BLEAD-TSHでモーターをコントロールしてみました。
遠隔でモーターの回転を自在にコントロールできると、工作の幅が拡がりますよ!

関連記事

  1. 【家庭で使える!? Beaconアプリづくりにチャレンジ】BLEAD-…

  2. ねぇClova、開発したい 【サーバアプリ実装編】

  3. 自宅Wi-Fiお知らせアプリ開発【第一回】準備編

  4. BLE通信の基礎 – アプリ開発 – 活用例コ…

  5. アプリをデザインする時に気をつけていること

  6. IoTで使用されている Bluetoothを利用したビーコンの基礎と…