ダイソーのおもちゃを使った工作の第3弾です。
今回は、LEDイルミネーションライトを使います。
機能
このLEDイルミネーションライトは、単3電池を3本使います。
タクトスイッチを押すたびに、「消灯」→「3色全灯」→「グラデーション点灯」→「消灯」を繰り返します。
今回は、このタクトスイッチをマイクロビットで制御し、室内が暗くなった時に「グラデーション点灯」、明るくなったら「消灯」させようと思います。
材料
- マイクロビット
- USBケーブル
- 電池ボックス(セリアの電池式モバイルバッテリー)
- 電池(単三×5)
- ダイソーのLEDイルミネーションライト
- ワニ口クリップ(×2)
- 配線(2心並列線)(30cm)
プログラム
イルミネーションライト内のタクトスイッチの端子と、マイクロビットの「0」ピンをつなぐことにします。
イルミネーションライトでは、タクトスイッチを押している間だけ、端子がグランドとつながるようです。
このため、マイクロビットの「0」ピンについても、一旦「0」をデジタル出力、直後に「1」をデジタル出力することで、タクトスイッチを1回押したのと同様の扱いになるはずです。
実際のプログラムは、以下のようになります。
「フラグ」という名前の変数を準備します。「フラグ」は、部屋が暗いときに「1」、明るいときに「0」にします。
部屋が暗く、「フラグ」が「0」のとき(つまり、明るい状態から暗い状態に変わったとき)、タクトスイッチを2回押すのと同等の処理を行い、「フラグ」を「1」にします。
部屋が明るく、「フラグ」が「1」のとき(つまり、暗い状態から明るい状態に変わったとき)、タクトスイッチを1回押すのと同等の処理を行い、「フラグ」を「0」にします。
つなぎかた
タクトスイッチの一方の端子は、グランド(電池のマイナス極)につながっています。この端子に、2心並列線の黒い方をつなぎます(こちらは後で、マイクロビットの「GND」ピンとつなぎます)。
タクトスイッチのもう一方の端子は、基板上のマイコンにつながっています。この端子に、2心並列線の赤い方をつなぎます(こちらは後で、マイクロビットの「0」ピンとつなぎます)。
配線の逆側には、ワニ口クリップを取り付けます。
ワニ口クリップの黒を、マイクロビットの「GND」ピンと、ワニ口クリップの赤を、マイクロビットの「0」ピンとつなげばできあがりです。
結果
部屋が暗くなると、イルミネーションが点灯し、明るくなると消灯します。
元々イルミネーションライトについているタクトスイッチも外していませんので、ふつうにスイッチを押して制御することもできます。
なお、マイクロビットは、単にスイッチを押す回数を制御しているだけです。
そのため、もしも例えば、部屋が暗く、なおかつライトが消灯している状態から、マイクロビットでの制御を開始してしまうと、部屋が明るいときに点灯、部屋が暗い時に消灯と、所望とは逆の動作を繰り返すことになります。
なお、私がマイクロビットの使い方を習得するのにあたっては、以下の書籍を参考にさせていただきました。
初心者向けから、比較的高度なものまで、さまざまな情報が記載されているだけでなく、子供向けの作例も多数掲載されていますので、「プログラミング教育」のための題材さがしなどにもおすすめです。