角度センサーの角度でテープLEDの光を制御する方法

以前、マイクロビットと角度センサーを繋げてみました。


今回は、Seed Studio(シードスタジオ)の「Grove Inventor kid for microbit (マイクロビット周辺機器キッド)」入っていたテープ LEDも繋いで、ノブを回すとテープLEDの光量が変化する装置を作ります!※Grove Inventor kid for microbitのマニュアル9に記載されているプロジェクトです。

用意するもの

・Potary Angle Sensor(角度センサー)

・WS2812b(テープLED)

・シールド

・マイクロビット

マイクロビットと角度センサー、テープLEDを繋ごう

マイクロビットをシールドに差し込んで、角度センサーを「P0 / P14」に、テープLED表示器を「P1/ P15」に接続します。

コードを作成しよう

角度センサーのノブを回すと、テープLEDの色と明るさが変化するプロジェクトです。マニュアルが英語なので、日本語化してみました。マイクロビット専用プログラミングエディタ「JavaScript Blocks Editor」でプログラミングしていきます。

①「基本」の「最初だけ」をドラッグします。

②変数「角度センサー」を作成します。「変数」の「変数を追加する」をクリックしましょう。

③キーボードで「角度センサー」と入力して「OK」をクリックします。


④「変数 角度センサー▼を0にする」ブロックを「最初だけ」ブロックの中にドラッグします。

⑤「高度なブロック」をクリックしましょう。


⑥「入出力端子」の「アナログ値を読み取る 端子P0 にする」をドラッグします。

⑦下図のようにはめ込みましょう。

⑧変数「レインボー」を作成します。「変数」の「変数を追加する」をクリックしましょう。


⑨キーボードで「レインボー」と入力して「OK」をクリックします。


neopixcelのパッケージをダウンロードします。「高度なブロック」をクリックしましょう。

⑪「拡張機能」をクリックします。

⑫「neopixcel」をクリックすると、パッケージをダウンエオードします。


⑬neopixcelのパッケージがGroveの下にダウンロードされました。

⑭「変数▼を端子P0▼ に接続しているLED24個のNeoPixcel(モードRGB(GRB純)▼)にする」ブロックをドラッグします。

⑮プルダウンメニュー▼をクリックして、変数をレインボーにします。


⑫「P0」を「P1」に、「24」を「30」に変更します。

⑬「基本」の「ずっと」をドラッグします。

⑭「Neopixcel」の

  • 「変数をレインボーパターン(色相1から360)に点灯する」
    「変数に設定されている色をLED1個分ずらす(ひとまわり)」
    「変数を設定した色で点灯する」

ブロックをドラッグします。

⑮「変数」を「レインボー」に変更します。

⑯「入出力端子」の「アナログ値を読み取る 端子P0」を「1」の上にはめ込みます。

⑰「基本」の「一時停止(ミリ秒)100」をドラッグします。

⑱「100」を「20」に変更します。
⑲これで、全体のプログラムが完成しました!

プログラムをダウンロードする

先ほど作成したプログラムに名前を付けて、ファイルをパソコンにダウンロードします。

マイクロビットにプログラムを転送しましょう。黄色い点滅が点灯に変わったら送信完了です。

角度センサーのノブを回してみよう

角度センサーを回すと、レインボーの色と照度が変わります。

とっても綺麗なので、このプログラムはお気に入りです!^^これと似たLEDを使ったキットもおすすめですよ。