ステップ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の測定値と比較してみましょう。
- 明るさの値を使って、照明が点いている時間を測るタイマーを作ってみましょう。
This content is published under a Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) licence.