micro:bit+モータードライバ+電池 Scratchでも使える一体化モジュールを作ってみました
micro:bitは、とても使いやすい教育用のマイコンボードで、Scratch3.0でも使うことができます。しかし、端子のドライブ能力が低いため、直接DCモーターを動かすことができません。そのため、モータードライバー付きの拡張ボードがいろいろと売られているのですが、Scratch3.0でも使えるものは見つかりません。それならば、ということで、子供でも簡単に安心して扱えるような、micro:bitにモータードライバーと電池を組み込んだモジュールを作ってみました。
オールインワンモジュール
下の写真がそれです。DCモーターを2個、サーボモーターを2個、ドライブできるようにしてあります。DCモーターとサーボモーターをピンコネクターにつなぐだけで使うことができます。ScratchでもMakecodeエディター等でも使えます。ただし、Scratchでmicro:bit+モーターを動かすためには、MicrobitMoreという拡張機能を使う必要があります。このブログの「Scratch3.0でmicro:bit(マイクロビット)の更なる拡張機能MicrobitMoreを使う」という記事を参照してください。
ここで用いた主な部品は、以下のとおりです。部品の詳細は後述します。
- micro:bit本体
- 拡張ボード
- モータードライバー
- 単3サイズのリチウム充電池と電池ボックス
- 電源スイッチ
- モーター接続用ピンコネクター
- プラスチックケース
micro:bit本体は、拡張ボードに差し込んで固定しています。拡張ボードからはピンコネクターでモータードライバーにつないでいます。
micro:bitの端子のうち、LED表示を邪魔しないように、以下の端子を利用しています。ピンコネクターを使っていますので変更はできます。
DCモーターA: 0,1
DCモーターB: 2,8
サーボモーターA:15
サーボモーターB:16
プログラミングは、Scratch3.0でできますが、Make Codeエディターなども使えます。
今回用いた拡張ボードではmicro:bitへの電源供給ができません。そのため、micro:bitとモータードライバーの両方に電源を供給する必要があります。
電源として3.7Vリチウム電池を使うことを想定して、micro:bitについては、マイクロUSB端子を介して電源を供給しています。上の写真のように、マイクロUSBのコネクターを細工して電源を供給しています。電池用の電源(PH)端子を使うと電池の電圧が少し高めなので内部回路に損傷を与えるかもしれません。電池の電圧がもう少し低ければ、電池用の電源端子を使うことができます。が、その場合サーボモーターによっては駆動できなくなるかもしれない、という問題が生じます。
MakeCodeエディターを使う場合には、プログラミングの際にPCとの接続にマイクロUSB端子を使いますので、USB端子の差し替えが必要になり、ちょっと不便です。このモジュールは、Scratch用と割り切るほうがよいかもしれません。
上の写真のmicro:bitの下に、単3サイズの電池ボックスを入れてあります(黄色い破線の楕円の位置)。電池の入れ替えの際は、micro:bitを一旦抜いて行います。
モータードライバーの下に小さくカットした汎用プリント板を重ね、DCモーターのピンコネクター(赤い楕円)とサーボモーターのピンコネクター(青い楕円)を取り付けました。
写真の左上に、スイッチを設け、電池のON/OFFができるようにしてあります。
なお、ケースの裏側にレゴ 2✕2プレートを貼り付けてありますので、レゴ作品に取り付けることができます。
使用した主な部品
micro:bit
上がmicro:bit本体です。25個のLEDが中心にあり、その両側に押し釦があります。下側に、大きな端子と小さな端子があります。大きな端子は、クリップなどで簡単につなぐことができますが、小さな端子はなかなか困難です。
拡張ボード
micro:bitの端子から信号を取り出すために、「ブレークアウトアダプタボード Iobit」を使いました。
モータードライバーモジュール
アマゾンで探した所、「Calloy L9110S DC モータ ステップモータ駆動板 Hブリッジモータドライブ モジュール ドライバ コントローラボード(5個セット)」という、大変なお買い得品がありました。DCモーターが2個ドライブできます。L9110Sというのは、DCモータードライバーチップです。
リチウム電池
単3サイズの充電型のリチウム電池である、14500タイプを使いました。電圧は公称3.7Vですが、フル充電での電圧は4Vを超えるようです。この電池から、micro:bitとモータードライバーに電源を供給しています。micro:bitにはマイクロUSB端子から供給しています。