2024年4月13日土曜日

micro:bitからモータドライバモジュール(TB6612FNG)を使ってDCモータ(マブチ130同型)を動かせるかやってみる〜プログラムを作って完成

前回の続きです。FT-DC-002や自作ロボットカーベースをラジコンカーに仕立てて、モータドライバICモジュール(TB6612FNG)とmicro:bitマイクロビットブレイクアウトボードキットを使用)でラジコンカーを作るところまでは終わりました。

今回は、2つのmicro:bitにそれぞれ「ラジコンカー」と「コントローラ」のプログラムを流し込んでみます。MakeCodeを使って作ったプログラムは、以下のとおりです。備忘も兼ねて少し解説も加えておきます。

〈ラジコンカーのプログラム〉

モータドライバICでモータを制御するために、micro:bitからPWMでアナログ出力をしておく必要があります。それから、どちら向きに電気を流すか、または、流さないかを制御しています。デジタルで「1」は、電気を流すことを表し、「0」は、電気を流さないことを表しています。この電気を流すことによって、モータドライバICのモータ側の電気のON/OFFや正逆回転が制御されることになります。

〈コントローラのプログラム〉

micro:bitの傾きを検知して、停止、前進、後退、右回、左回の5つを制御するプログラムにしました。同時に、現在の状態を示す矢印(「↑」…前進、「↓」…後退、「←」…左回、「→」…右回、「−」…停止)を5*5LEDマトリクスで表示するようにしました。こちらのプログラムは、サーボモータで動かしたい場合でも共通して使うことができます。

FT-DC-002と自作ロボットカーベースで試してみましたが、問題なく動作してくれました。強いて問題点を上げるとすれば、やはり配線の複雑さですね。サーボモータのときのようにmicro:bitから直接制御できず、モータドライバICを挟まなければならないため、どうしても配線は複雑になります。モータドライバICが組み込まれたブレイクアウトボードやワークショップモジュールのようなものが出来上がるとラジコンカーを簡単に作ることができそうです。せめてもの対策として、ユニバーサル基板にモータドライバICモジュールを載せて、micro:bitのブレイクアウトボードに簡単に接続できるように工夫してみたいと思います。

0 件のコメント: