Skip to content

アクティビティ

最高最低温度計

中級 | MakeCode, Python | LED表示, ボタン, 温度センサー | センサー, 反復処理, 変数, 天気&気候, 温度, 計測, 関係演算子

ステップ1: 作る

説明

micro:bit上でプログラムを動作させたままで、最高最低温度を記録します。

この2つのビデオで、何を作り、どのようにコーディングするかご案内します。

はじめに

プログラミングガイド

動作の仕組み

  • 温度計プロジェクトのようにこのプログラムではmicro:bitのCPU(中央処理装置)に内蔵した温度センサーを使って、温度を °C(摂氏)で測定します。
  • このプログラムは3つの変数currentTemp(現在の温度読み取り値)max(最高温度)min(最低温度)を使って最低温度と最高温度を記録します。
  • プログラム開始時には、全てが同じ値に設定されます。無限(ずっと)ループで2秒毎に読み取って、プログラムで現在の温度をmaxmin変数と比べることになります。
  • 現在の温度が変数minに格納された値より小さい(<)場合、min変数を現在の温度と同じにします。
  • 現在の温度が変数maxの値より大きい(>)場合、max変数を現在の温度と同じにします。
  • プログラムは、動作していることがわかるように、無限ループを実行する度にLEDディスプレイにドットを点灯します。
  • ボタンA を押すと、記録された最低温度、ボタンBは最高温度を表示します。
  • micro:bitを24時間稼働させたままにして、 毎日同時に最高温度と最低温度の記録とグラフの作成をして、リセットすることもできます。

必要なもの

  • micro:bit(またはMakeCodeシミュレーター)
  • MakeCodeまたはPythonエディター
  • バッテリーパック(オプション)
  • 温度の変化をすばやく見たいときには、熱源やファンのような冷却装置
    (または micro:bit を屋外に持っていってください)
  • 時間経過で温度グラフを記録したい場合はグラフ用紙

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

1from microbit import *
2
3currentTemp = temperature()
4max = currentTemp
5min = currentTemp
6
7while True:
8    display.show('.')
9    currentTemp = temperature()
10    if currentTemp < min:
11        min = currentTemp
12    elif currentTemp > max:
13        max = currentTemp
14    if button_a.was_pressed():
15        display.scroll(min)
16    if button_b.was_pressed():
17        display.scroll(max)
18    sleep(1000)
19    display.clear()
20    sleep(1000)
21

ステップ3: 改善する

  • 別の温度計と読み取り値を比較してください。 micro:bitはどのくらい正確ですか? 気温を計るためにmicro:bitの読み取り値を修正する必要がありますか? どうすればできるのでしょう?
  • 温度を華氏に変換します。
  • 別のmicro:bitに温度測定値を送信するには、 無線 を使用します。