Skip to content

アクティビティ

エネルギーライトメーター

上級 | MakeCode, Python | LED表示, ボタン, 光センサー | 13 気候, センサー, 入出力, 変数

ステップ1: 作る

説明

家や学校でのエネルギー使用量を調べる3つのプロジェクトの1つ目です。

この光量計は、身の回りの照明が点いているとき、消えているときの明るさを測定します。さらに次のプロジェクトで光タイマーを設置するのに最適な場所を探すのに役立ちます。

学ぶこと

  • micro:bitのセンサーの測定値を変数に保存する方法を学びます。こうすると条件が変わっても、同じ値を何度でも読み取れます。
  • 信頼性の高い環境データが記録できる場所を探します。

使い方

  • 照明を消して、明るさを読み取る位置にmicro:bitを置いて、Aボタンを押します。
  • 表示が読みやすい位置にmicro:bitを移動して、Bボタンを押して明るさの値を確認します。 値は0 (暗い) から 255 (micro:bitが測定できる最も強い明るさ) までの数字になります。
  • ちゃんと読み取れなかった場合は、もう一度Bを押してください。
  • つぎに照明を点けて、もう一度Aボタンを押して計測をしなおし、Bボタンを押して数字を読み取ります。
  • 照明が点いているときと消えているときに、測定値に大きな違いがある場所をさがしましょう。 日の光が入る窓辺はさけて、照明に近い場所が良いでしょう。 照明つきの棚のような場所があれば理想的かもしれません。
  • いくつかの測定値を取り、照明が点灯しているときの測定値の平均値を求めます。 この平均値は次のプロジェクトエナジーライトタイマー で使います。

動作の仕組み

  • このプログラムではreadingという変数を使って、明るさを記録します。 プログラムの最初と、ボタンAを押したときに測定値が記憶されます。
  • 明るさの値を表示するだけでなく変数に記録することで、ノートに書きとるまで何度でも見返すことができるのです。
  • 変数を使えば、ディスプレイの表示を見にくい場所の明るさを測定しても、別の見やすい場所で確認することもできます。

必要なもの

  • micro:bit(またはMakeCodeシミュレーター)
  • MakeCodeまたはPythonエディター
  • バッテリーパック(推奨)

ステップ2: プログラムする

1from microbit import *
2
3display.show('M')
4reading = display.read_light_level()
5sleep(100)
6
7while True:
8    if button_a.was_pressed():
9        # take a light measurement and store it
10        reading = display.read_light_level()
11        display.show(Image.DIAMOND_SMALL)
12        sleep(400)
13        display.show(Image.DIAMOND)
14        sleep(400+500)
15        display.show('M')
16
17    elif button_b.was_pressed():
18        # display the stored light measurement
19        display.clear()
20        display.scroll(reading)
21        sleep(500)
22        display.show('M')
23

ステップ3: 改善する

  • プログラムを変更して、読み取った値の平均値を計算するようにしてみましょう。
  • 2つ目のmicro:bitを追加して、離れたところから無線で明るさを読み取れるようにしましょう。
  • 他の単位で明るさを測定できる照度計が使えるなら、micro:bitの測定値と比較してみましょう。
  • 明るさの値を使って、照明が点いている時間を測るタイマーを作ってみましょう