Skip to content

アクティビティ

音コンパス

中級 | MakeCode, Python | LED表示, コンパス, ボタン, | コンパスの使用, 変数, 抽出, 関係演算子

ステップ1: 作る

説明

北を向いているときに音が鳴るコンパスを作って、アクセシビリティを高めてより便利にしましょう。

はじめに

プログラミングガイド

学ぶこと

  • micro:bitの磁力計センサーからコンパスが読み取る値の使い方
  • 変数、選択、比較、センサーの読み取り値が一定の数値範囲になった時にイベントを起こすロジックの使い方

動作の仕組み

  • ループを使ってどの方向を向いているかをmicro:bitに確認し続けさせます。 これをdirectionという変数に格納します
  • 方向が355度から5度の間ならば北を向いているので、LEDディスプレイにNを表示してビープ音を鳴らします。
  • 新micro:bitならば、内蔵スピーカーから音をだせます。そうでなければ、ヘッドフォンをピン0とGNDに接続すれば聞くことができます。
  • 北を向いていない場合は、ディスプレイをクリアしてサウンドを停止します。
  • 北を向いていなくても、Aボタンを押してLEDディスプレイにコンパスの読み取り値を表示することもできます。
  • micro:bitで初めてコンパスのプロジェクトを使用するときは、ちょっとしたゲームをすることになるでしょう。 画面を傾けてディスプレイ上の全てのLEDを点灯させます。 これにより、コンパスを較正し、正常な動作が保証されます。
micro:bitとコンパス図

必要なもの

  • micro:bit
  • MakeCodeまたはPythonエディター
  • バッテリーパック(オプション)

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

1from microbit import *
2import music
3
4while True:
5    direction = compass.heading()
6    if direction < 5 or direction > 355:
7        display.show('N')
8        music.play("C4:1")
9    elif button_a.is_pressed():
10        display.scroll(direction)
11    else:
12        display.clear()
13        music.stop()
14

ステップ3: 改善する

  • 南、東、西のどちらを向いているかに応じて異なる音を再生します。
  • コンパスが正確でないと思う場合に押して再調整するためのボタンを追加します。 MakeCodeでは、入力...その他の下に「コンパスを調整する」ブロックがあります。 Pythonではcompass.calibrate()を使用します