micro:bit adapter
micro:bit adapterを使って、micro:bitでlittleBitsを制御する方法を紹介します。
1.littleBitsとは
littleBitsとは
littleBits(リトルビッツ)は、さまざまな電子回路を搭載した「Bitモジュール」と呼ばれるブロックを、磁石の力でつなぎ合わせて電子工作を楽しむガジェットです。面倒な配線やハンダ付けなどは一切不要、思いついたアイデアをそのまま形にすることができます。
現在、国内向けにはKORGが販売・サポートを行い、Bitモジュール単体、または目的に合わせた最適なBitモジュールがセットになったキットとして購入できます。
Bitモジュールの種類
littleBitsのBitモジュールには、電源・センサー・スイッチ・モーターなどそれぞれ固有の機能があり、これまでに60種類以上が提供されています。これらのBitモジュールは、POWER・INPUT・WIRE・OUTPUTという4つのカテゴリーに分類され、それぞれコネクターの色がブルー・ピンク・オレンジ・グリーンに色分けされています。
POWER Bitモジュール(パワー)
POWER Bitモジュール(パワー)は、つながったすべてのBitモジュールに電源を供給します。006P型の乾電池(9V)やUSBコネクターに接続するものがあります。
INPUT Bitモジュール(インプット)
INPUT Bitモジュール(インプット)は、センサーやスイッチなどの入力用のBitモジュールです。電子回路の目や耳となり、周辺の状態を信号の大きさに置き換え、後続のBitモジュールへ伝えます。周辺の状態とは、周囲の明るさ(明るい・暗い)や対象物までの距離(近い・遠い)などのことです。また、自ら断続的な信号を発したり、信号に変化を与えるBitモジュールもこのカテゴリーに含まれます。
WIRE Bitモジュール(ワイヤー)
WIRE Bitモジュール(ワイヤー)は、2つのBitモジュールを離れた位置でつないだり、信号の分岐などを行うBitモジュールです。受け取った信号の状態(オン・オフ)を反転したり、モーメンタリータイプの信号(押した瞬間だけオン)をオルタネイトタイプの信号(オンまたはオフを保持)に変換するものもあります。また、コンピューターを搭載したBitモジュールもこのカテゴリーに含まれます。
OUTPUT Bitモジュール(アウトプット)
OUTPUT Bitモジュール(アウトプット)は、LEDやブザー、モーターなどの出力用のBitモジュールです。音を鳴らせたり、光らせたり、モーターでタイヤを回すことができます。INPUT Bitモジュールの後続につなげば、音の大きさや明るさ、回転速度などを制御できます。
Bitモジュールのつなぎ方
下の図は、4つのカテゴリー(POWER・INPUT・WIRE・OUTPUT)の中から、ひとつずつ選んで接続した例です。まず、すべてのBitモジュールに電源を供給するPOWER Bitモジュールとして、006P型の乾電池(9V)を使用する「p4 power」を用意しました。その後ろに、INPUT bitモジュール「i5 slide dimmer」を接続、WIRE Bitモジュール「w1 wire」を介して、少し離れたところにOUTPUT Bitモジュール「o9 bargraph」をつなぎました。
この電子回路では「i5 slide dimmer」のつまみを左右へ移動することで信号の大きさが変化し、その信号の大きさによって「o9 bargraph」のLEDが1個~5個まで点灯します。これは、INPUT Bitモジュールの信号が、WIRE Bitモジュールを介して、後続のOUTPUT Bitモジュールへ伝わるからです。
ところで、INPUT Bitモジュール「i5 slide dimmer」とOUTPUT Bitモジュール「o9 bargraph」の場所を入れ替えるとどうなるでしょうか?
INPUT Bitモジュールは信号を後続へ送るので、先行するOUTPUT Bitモジュールには影響しません。なので「i5 slide dimmer」のつまみをいくら動かしても「o9 bargraph」のLEDが変化することはありません。ちなみに「o9 bargraph」のLEDは、直前のPOWER Bitモジュール「p4 power」によって5つすべてが点灯したままになります。
このように、Bitモジュールの接続は、信号の伝わる方向を意識することが大切です。なお、Bitモジュールの表面には、信号の向きが矢印「→」で記されています。
2.micro:bitで制御するには
micro:bitで制御するには
micro:bitで、Bitモジュールを制御するには、WIRE Bitモジュール「w34 micro:bit adapter」を使用します。「w34 micro:bit adapter」には、中央にmicro:bitを差し込むエッジコネクター、前後にBitモジュールを接続する出力用コネクター(3個)と入力用コネクター(3個)があります。出力用コネクターと入力用コネクターには、それぞれmicro:bitのGPIO端子であるP13・P14・P15、P0・P1・P2がつながっています。micro:bitへの電源の供給は、入力用コネクターに接続したPOWER Bitモジュールによって行われます。
接続例です。
micro:bitは、出力コネクター側にLED画面が向くように差し込みます。
入力用コネクターに接続されたINPUT Bitモジュールの状態(信号の大きさ)を読み取るには「デジタルで読み取る」ブロック、または「アナログ値を読み取る」ブロックを使います。例えば「i3 button」や「i20 sound trigger」のようにオフ、またはオンの状態をとるものは「デジタルで読み取る」ブロックで0、または1の値となります。また「i8 proximity sensor」のように距離によって連続した状態をとるものは「アナログで読み取る」ブロックを使って0~1023の値となります。
出力コネクターに接続されたOUTPUT Bitモジュールを動かすには「アナログで出力する」ブロックを使って、0~1023の値を出力します。例えば「o6 buzzer」は値が大きければ大きな音が鳴ります。また「o9 bargraph」は値によって点灯するLEDの個数が変化します。「o11 servo」に接続したサーボモーターの回転角は「アナログで出力する」ブロックの値によって制御できます。「デジタルで出力する」ブロックを使った場合、1の値は「アナログで出力する」ブロックの1023に相当します。