micro:Maqueen V3.0【電飾制御編】
micro:Maqueen V3.0の底面にある4個のRGB LED(NeoPixel)をさまざまなパターンで点灯するプログラムを紹介します。
この記事は、DFROBOTの「micro:Maqueen V3.0」を使ったプログラミングです。micro:Maqueenは「付録3-12.micro:Maqueen V3.0」で詳しく紹介しています。また、組み立て方法は「5-2.micro:Maqueen V3.0【組み立て編】」で解説しています。
5-6-1.NeoPixelとは
NeoPixel(ネオピクセル)は、WS2812/WS2812BなどといったLEDチップをベースとしたLEDモジュールです。これらのLEDチップは、5mm×5mmという小さなボディに制御回路とLEDを組み込み、1本の信号線で1,600万以上の色を設定することができます。また、LEDチップの信号線を直列につなぐことで、複数のLEDチップを同時に制御することができます。その特徴を活かして、NeoPixelにはテープ状・リング状・マトリックス状などさまざまな形状のものがあります。
5-6-2.micro:Maqueen V3.0のRGB LED
micro:Maqueen V3.0の底面には4個のRGB LED(NeoPixel)が搭載され、それぞれRGB0~RGB3までの名前が付いています。micro:bitの端子P15につながった1本の信号線を使って、すべてのRGB LEDを制御することができます。
RGB LEDは、下(床)へ向かって取り付けられているので、点灯時には光が床面に反射して派手目な演出となります。
4個のRGB LEDをいろいろなパターンで点灯させた動画です。
5-6-3.このプログラムの動作に必要なもの
このプログラムの動作には次のものが必要です。
- micro:bit本体(micro:Maqueen V3.0用)
- micro:Maqueen V3.0(別途、単四型乾電池×3本を用意する)
- パソコン(*1)
- USBケーブル(*1)
(*1):パソコン・USBケーブルは、プログラミングに必要なものです。
5-6-4.拡張機能「Neopixel」の追加
micro:Maqueen V3のRGB LEDを点灯させるには、次の手順に従って、拡張機能「Neopixel」を追加します。
拡張機能「Neopixel」の追加
MakeCodeエディターを起動して「新しいプロジェクト」を作成後、「拡張機能」をクリックします。
拡張機能の一覧が表示されるので「neopixel」をクリックします。または、検索ボックスに「neopixel」を入力して検索します。
拡張機能「Neopixel」が追加されたことを確認します。
5-6-5.使い方
NeoPixelを初期設定する
「最初だけ」ブロックに、NeoPixelの初期設定を行うブロック(neopixel.create)をつなぎます。micro:Maqueen V3のRGB LED(NeoPixel)は、micro:bitの端子P15に接続されているので、P15を選択します。
続けて、LEDの個数「4」を入力します。これで、最小限の初期設定ができました。
すべてのLEDを同じ色で光らせる
「赤色に点灯する」ブロックをつなぎます。このプログラムをmicro:bitに書き込むと4個のLEDが赤色に光ります。「赤」の他に「だいだい・黄・緑・青・あい・すみれ・紫・白・black」が選択できます。「black」を選択するとLEDは消灯します。
また、「RGB」ブロックを使うと自由に色を設定することができます。光の三原色である赤・緑・青を0~255までの範囲で指定します。その組み合わせは1,600万以上となります。
別々の色で光らせる
「0番目のLEDを赤色に設定する」ブロックをLEDの数だけつなぎます。LEDの番号は0から始まるので、4個のLEDの場合、0~3までのLEDに色を設定します。
このブロックは、LEDに対して色を「設定」するだけなので、このままでは点灯しません。「設定した色で点灯する」ブロックを最後につなぎます。
ぐるぐる回す
ぐるぐる回すとはどういうことでしょうか。LEDに設定されている色をひとつずつ連続してずらす(最後のLEDは先頭のLEDに移動する)ことで、LEDの光が回転しているように見えます。
「設定されている色をLED1個分ずらす(ひとまわり)」ブロックを使います。「くりかえし」ブロックと組み合わせることで、LEDの光がぐるぐる回っているように見えます。点灯させる時間を「一時停止」ブロックで指定します。
ランダムに光らせる
「RGB」ブロックと「乱数」ブロックを組み合わせることで、LEDをランダムに光らせることができます。