【マイクロビット×メイクコード】日常生活にいかす工作!冷蔵庫の見張り番をプログラミング

この記事では、マイクロビット(micro:bit)を使った工作
冷蔵庫の見張り番の作り方を紹介します。

 

マイクロビットとは、情報教育のために英国放送協会(BBC)で開発された小さなコンピュータ。
日本でもプログラミング教育の教材として小学校での導入が進んでいるそうです。

ブロックを組み合わせてプログラミングするので、初心者のお子さんでも楽しむことができます。

  • マイクロビットを使った工作にチャレンジしたい
  • 夏休みの自由研究でちょっとスゴいと思われたい
  • 作るなら日常生活にいかせるものがいい

という人にオススメです。

 

初心者さんにも分かるように手順をていねいに紹介します。
また、内容が理解しやすいようになるべく簡単なプログラムにしました。

 

スポンサーリンク

今回作ったプログラム

冷蔵庫の見張り番

一般的に、冷蔵庫の扉を10秒開けたままにすると庫内の温度は3~5℃も上昇し、
元の温度に戻るまでに10分以上もかかると言われています。

そこで冷蔵庫を開けている時間を視覚的にお知らせする装置を作ってみました。

 

マイクロビットを冷蔵庫の中に置いて、開いている時間によって表情が変わります。

  • 冷蔵庫を開けると「うれしい顔」を表示する
  • 冷蔵庫を開けてから5秒後に「かなしい顔」を表示する
  • 冷蔵庫を開けてから10秒後に「おこり顔」が表示する。

 

必要なもの

冷蔵庫の見張り番の材料

  • マイクロビット
  • 電池ボックス&電池
    マイクロビット単体で動かしたい場合、電池ボックスが必要です。
  • USBケーブル
    パソコン側がUSB TypeA、マイクロビット側がMicro USB TypeBです。
  • パソコン
    インターネットができてUSBポートがついているもの。
  • 装飾用するもの
    画用紙や牛乳パック、空き箱など

 

 

使用するマイクロビットの機能

明るさセンサーとLED

今回はマイクロビットのLED明るさセンサーを使います。

LED

マイクロビットの表面の中央にある25個(5×5)の赤色に光るLED。
文字や数字などを表示させることができます。

 

明るさセンサー

LEDは明るさセンサーとしても使うことができます。

まわりの明るさを計測し、0~255の値で表します。
(真っ暗だと0、明るくなるほど値が大きくなる)

 

冷蔵庫が閉まっている時、庫内は暗くなります。
また、冷蔵庫を開けた時に照明がついて庫内は明るくなります。

明るさセンサーを使えば、冷蔵庫が開いている・閉まっているを判断できますね。

 

MakeCodeエディターでプログラミング

MakeCode(メイクコード)エディターで、プログラミングしてみましょう。

 

MakeCodeエディターの基本的な使い方は、下の記事にまとめています。

 

光量計を作ってみる

まず最初に簡単な光量計を作ってみましょう。

ボタンAがおされた時、明るさの値をLEDに表示するプログラムです。

光量計のプログラム

 

ツールボックスから必要なブロックを
ドラッグアンドドロップしてプログラミングエリアに出します。

ドラッグアンドドロップで組み立てる

ドラッグアンドドロップで組み立てる2

「ボタンAが押されたとき」ブロックと
「明るさ」ブロックは入力のカテゴリ、
「数を表示」ブロックは基本のカテゴリにあります。

 

必要なブロックをプログラミングエリアに出したら、
ドラッグアンドドロップでブロックを組み立てていきます。

ドラッグアンドドロップで組み立てる3

 

シミュレーターで確認してみよう

プログラムが完成したらシミュレーターでテストしましょう。

「明るさ」ブロックを使っていると、マイクロビットの左上にコントローラーが出てきます。
丸の中をドラッグして明るさの値を変えてみてください。

シミュレーターで確認

LEDに明るさの値が表示されたでしょうか。

 

実機で動かしてみよう

シミュレーターで確認できたら
マイクロビットにプログラムを転送して実際に動かしてみましょう。

  1. パソコンとマイクロビットをUSBケーブルでつなぐ
  2. Makecodeエディターの「ダウンロード」ボタンをクリックし、
    .hexファイルをダウンロードする
  3. ダウンロードした.hexファイルを「MICROBIT」ドライブに保存する

 

 

転送が完了すると、プログラムが自動的に実行されます。

部屋の中や外など色々な場所の明るさを測ってみてください。
この時、冷蔵庫の中の明るさを測ってメモしておいてくださいね。

 

PRLEGO(R)教材を使って楽しみながらプログラミングを学ぶ教室【Crefus】

冷蔵庫の見張り番のプログラムをつくる

LEDと明るさセンサーの使い方が分かったところで、
本題の冷蔵庫の見張り番をプログラミングしてみましょう。

冷蔵庫の見張り番プログラム

 

使っているブロックの中で、ちょっとむずかしいものを解説します。

変数の使い方

「スタート稼働時間」「経過時間」変数です。

変数とは、データを一時的に覚えておくための入れ物のことです。
プログラムで人間が分かるように名前を付けます。

 

変数カテゴリで「変数を追加する」ボタンをクリックして作ってください。

MakeCode変数の作り方

変数の値を変える「変数~を~にする」ブロックも変数カテゴリにあります。

 

変数については「変数とは?スクラッチ(Scratch)を使って解説」でくわしく解説しています。

 

稼働時間を取得する

「稼働時間(ミリ秒)」は、電源が入ってから経過した時間を取得するブロック。
入力カテゴリのその他にあります。

時間の単位はミリ秒です。

ミリ秒は1,000分の1秒、マイクロ秒は1,000,000分の1秒です。

 

条件分岐(もし~なら)

「もし~なら」「○○>□□」は条件によって処理を分岐させるブロックです。
論理のカテゴリにあります。

条件にあっていれば「~なら」、
条件にあわなければ「でなければ」の中の処理を行います。

 

PRコーチとマンツーマンでオンラインプログラミング学習|Tech Kids Online Coaching

プログラムの内容を解説

今回のプログラムをフローチャートにしてみました。

フローチャート(流れ図)とは、
 仕事の流れや処理の手順を図式化したもので、プログラムの設計に使われています。

冷蔵庫の見張り番フローチャート

 

くわしくみてみましょう。

最初だけ・ずっと

「最初だけ」のブロックの中には、プログラムの起動時に1回だけ実行する処理が入ります。

変数「スタート稼働時間」「稼働時間(ミリ秒)」にする命令で、
変数「スタート稼働時間」冷蔵庫を開けた時点の稼働時間を記憶しておきます。

以降は「ずっと」のブロックの中の内容をくり返します。

 

もし冷蔵庫が開いていたらの判定

  • もし「明るさ」> 5 なら
    冷蔵庫が開いている状態です。経過時間の判定を行います。
     
  • でなければ
    冷蔵庫が閉まっている状態です。
    「スタート稼働時間」をリセット(稼働時間(ミリ秒)にする)して
    LEDの表示を消します。

明るさセンサーはマイクロビットのLEDの明るさも測定してしまうので、0だとうまく動きません。

また冷蔵庫の中の明るさの値より大きな値にしてしまうと、
冷蔵庫を開けても反応しなくなってしまいます。

最初に作った光量計で測った、冷蔵庫の中の明るさを参考に判定の値を調整してみてください。

 

経過時間の判定

「経過時間」「稼働時間(ミリ秒)」「スタート稼働時間」にする命令で、
冷蔵庫を開けてから何秒たったか計算しています。

  • もし「経過時間」< 5000 なら
    「冷蔵庫を開けてから5秒未満なら」の判定です。
    「うれしい顔」を表示します。
     
  • でなければもし「経過時間」<= 10000 なら
    「冷蔵庫を開けてから5秒~10秒」ならの判定です。
    「かなしい顔」を表示します。
     
  • でなければ
    「10秒より長く冷蔵庫を開けている状態」なので
    「おこり顔」を表示します。

 

シミュレーターで確認

プログラムが完成したらシミュレーターで思った通りに動くかテストしましょう。

コントローラーをドラッグして明るさの値を変えてみてください。

シミュレーターで確認

5より大きい場合と5以下の場合で動きが変わったでしょうか。

うれしい顔が表示されてから5秒後、10秒後に顔に変化するか確認しましょう。

 

実機でテストしてみよう

シミュレーターで確認できたら
マイクロビットにプログラムを転送して実際に動かしてみましょう。

明るい場所に置いたとき、真っ暗な場所に置いたときで動きが変わったでしょうか。
また、5秒後、10秒後に顔に変化するかも確認しましょう。

 

ずっと冷蔵庫を開けたり閉めたりしていると怒られるので
冷蔵庫の中に置くテストは一番最後にやりましょうね。

 

マイクロビットを装飾しよう(工作)

マイクロビットをそのまま冷蔵庫に置くのもさみしいので装飾してみましょう。

冷蔵庫の見張り番工作

マイクロビットと電池ボックスを収納するケースを作ってみました。

牛乳パックや空き箱を利用するのもいいですね。

 

もっとスゴイのを作りたい人向け

最新バージョンのマイクロビット(v2.0)にはスピーカーが内蔵されています。

LEDだけだと気が付かない場合もあるので、
音を鳴らす命令を追加して、音でもお知らせするようにしてもいいと思います。

 

音を鳴らすプログラムの作り方は下の記事にまとめています。

よかったら参考にしてみてください。

 

なお、旧バージョンのマイクロビット(V1.5以前)にはスピーカーがついていません。
本体と別にスピーカーとワニ口クリップが必要になります。

\ケーブルがないので邪魔になりません!/

 

まとめ

冷蔵庫の見張り番の作り方を紹介しました。

夏休みの工作の材料としてマイクロビットは、少し金額が高いように感じるかもしれません。

しかし、マイクロビットはくり返し使うことができますし、
新しくプログラムを作ってまったく違う作品を作ることができます。

1回きりの工作キットよりは長く使えるのではないでしょうか。

次の年にもっと複雑なプログラムにチャレンジするのもオススメです。

 

 

タイトルとURLをコピーしました