micro:bitとGROVE Inventor Kitを使ったものづくり入門(1) 導入編
この記事はmicro:bitの基本的な使い方をすでに学習した人が、GROVE Inventor Kitを使ってステップアップするためのものです。GROVEモジュールを使うと難しい配線なしに様々なセンサーやディスプレイなどのモジュールを使うことができます。
(この記事はものゼミのために執筆しています。)
GROVE Inventor Kitの紹介
使うキットはこちらです。
micro:bit用 GROVE Inventor Kit (スイッチサイエンス)
箱を開いてみると、
・micro:bit用GROVEシールド x1
・緑色の袋に入ったモジュール x7
・LEDテープ x1
・microUSBケーブル x1
・ワニ口クリップ 赤、黒、白、黄、緑 各2
・説明書(英語)
が入っていると思います。
micro:bit用GROVEシールド
まず、micro:bit用GROVEシールドについて説明します。
これは下の写真のようにmicro:bitを差して使います。
差し込む前にまずmicro:bitはケーブルを抜いてPCと接続を切りましょう。
電源が入ったままの回路構成の変更は故障させる可能性があります。
固いときもありますが、しっかり奥まで差し込みましょう。
PCとの接続は今までmicro:bit単体で接続していた時と同じ端子を使います。GROVEシールドの端子を使っても電源供給のみで、通信はできないので気をつけましょう。
後で説明するモジュールとの接続には下側にある白い端子を使います。4つあるのですが、一番左側の端子だけはI2C用となっていて、モジュールによって接続できる端子が限られるので気をつけましょう。
これらの端子を抜き差しするときも、micro:bitの電源供給を切ってから行いましょう。
センサーなどの8つのモジュール
GROVE Inventor Kitには8つのモジュールが入っています。
詳細な説明や使い方は別の記事で行うので、ここではどんなセンサーがあるのかの説明をします。
写真で上の4つは入力モジュールで、左から、
・ジェスチャーセンサー (Grove- Gesture)
・ボリューム/回転角度センサー (Rotary Angle Sensor(P))
・明るさセンサー (Grove- Light Sensor v1.2)
・超音波距離センサー (Grove- Ultrasonic Ranger)
となっています。
ジェスチャーセンサーは9種類ジェスチャーを認識することができます。
ボリュームは音量調整などのつまみとして利用されることも多いですが、回転角度の検出にも使うことができます。
明るさセンサーは環境の明るさを検出でき、昼か夜かだけでなく箱が閉まっているかどうかなどの検知にも使えます。
超音波距離センサーは3 cm~3.5 mの距離を計測することができ、目の前にものがあるかどうかの検出などにも利用できると思います。
次に、下の4つは出力モジュールで、左から、
・7セグメントディスプレイ (Grove- 4 Digit Display)
・赤色LED (Grove- Red LED)
・スピーカー (Grove- Speaker)
・LEDテープ (GROVE - WS2812 Waterproof LED Strip - 30 LEDs 1m)
になっています。
7セグメントディスプレイというのは数字を表示するためのもので、今回は4桁まで表示することができます。
赤色LEDはLEDを光らせるだけなのですが、ドライバーによって明るさを調整できます。
スピーカーは様々な音を鳴らすことができ、曲を流すこともできます。
LEDテープは30のLEDがついていて、それぞれのLEDを様々な色で光らすことができます。
モジュールを接続する端子に注意!
次の2つの入出力モジュールは使える端子が決まっているので注意が必要です。
・I2C端子のみ使用可能:ジェスチャー
・P0/P14端子のみ使用可能:スピーカー
また、その他のモジュールについてはP0/P14, P1/P15, P2/P16端子で利用可能なのですが、どの端子で使うかをプログラム内で明示してあげる必要があります。
LEDテープを光らせてみよう!
GROVE Inventor Kitの各モジュールを紹介したので、せっかくなので1つモジュールを動かしてみましょう。今回はLEDテープを虹色に光らせてみます。
まず、下の写真のようにLEDテープをGROVEシールドのP0/P14端子に接続します。白い端子は金属が見えている面が下向きになるように繋げます。(逆向きだと差せないようになっています。)
次に、micro:bitとPCを接続して、拡張機能からneopixelモジュールを追加します。
neopixelモジュールを追加できたら、次のように入力します。
//LEDテープを使う宣言(定義)
let strip = neopixel.create(DigitalPin.P0, 30, NeoPixelMode.RGB)
//LEDテープを虹色に光らせる
strip.showRainbow()
実行すると、シミュレータ上でもLEDテープが出てきます。
違う端子につなぎたい場合は、DigitalPin.P0と指定しているところを変えたら他の端子も使うことができます。
シミュレータ上で動くことが確認できたら、ダウンロードボタンからmicro:bitに書き込みましょう。実際にテープが虹色に光るはずです。
もし光らない場合は、
・GROVEシールドにmicro:bitが奥までささっているか
・USBケーブルを差す場所は正しいか
・白い端子はしっかり奥までささっているか
・白い端子はちゃんとP0/P14端子にささっているか
・他にモジュールをつないでないか(物によっては動かなくなります)
あたりを確認してみましょう。
これから他のセンサーの使い方や、より詳しいLEDテープの使い方も記事にする予定です。
他のモジュールも同じように白い端子で接続し、プログラムを書き込むだけで動かすことができるので、色々試してみましょう!
この記事が気に入ったらサポートをしてみませんか?