Skip to content

アクティビティ

スノードーム

初級 | MakeCode | LED表示, スピーカー, ボタン, 加速度センサー | アニメーション, 反復処理

ステップ1: 作る

説明

micro:bit を振って雪を降らせ、ボタン A を押すと「きらきら」という音が聞こえます。

学ぶこと

micro:bit の LED ディスプレイにアニメーションを作る方法、micro:bit の加速度計を使用して動きに反応する方法、micro:bit で表現力豊かなサウンドを再生する方法を学びます。 また、コンピュータ プログラムでループを使用する方法も学習します。

動作の仕組み

  • このプログラムは、micro:bit の 加速度計入力 を使用して、振動を感知します。
  • 加速度計が突然の動きを感知すると、プログラム は micro:bit の LED ディスプレイに雪が動くアニメーションを表示します。
  • チェッカーボードパターンとその反転の画像が連続して表示され、動きがあるような錯覚を生み出します。
  • 各画像を表示した後、プログラムは0.5秒間(500ミリ秒)、次の画像を表示する前に 一時停止 します。 これはアニメーションを遅くします。
  • このプログラムは、カウント制御ループを使用して、画像のシーケンスを 10 回表示します。
    ループは反復とも呼ばれます。
  • スノードームは、ボタン Aを使って、表現力豊かなサウンド「きらきら」を再生します。
  • 表現力豊かなサウンドを再生するには、micro:bit V2 が必要です。 micro:bit V1 をお持ちの場合は、アニメーション コードを使用できます。 または、代わりに「メロディを再生」ブロックを使ってヘッドフォンで音楽を再生することもできます。 ワニ口クリップのリード線を使用して、micro:bit のピン 0 をヘッドホン プラグの先端に接続し、GND をヘッドフォン プラグの長い部分に接続します。

必要なもの

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

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

1# Imports go at the top
2from microbit import *
3
4
5while True:
6    if button_a.was_pressed():
7        audio.play(Sound.TWINKLE) 
8    if accelerometer.was_gesture('shake'):
9        for i in range(10): 
10            display.show(Image('90909:'
11                               '09090:'
12                               '90909:'
13                               '09090:'
14                               '90909'))
15            sleep(500)
16            display.show(Image('09090:'
17                               '90909:'
18                               '09090:'
19                               '90909:'
20                               '09090'))
21            sleep(500)
22        display.clear()
23

ステップ3: 改善する

  • 「メロディを演奏」ブロックを使用してお祝いの曲を演奏するには、ボタンBを押すなどの他の入力を使用します。 これを行う方法については、Frère Jacques ループ プロジェクトを参照してください。
  • いくつかの「LED 表示」ブロックを使用して、雪が降るアニメーションをよりリアルに作成します。
  • 暗くなったときに LED ディスプレイに雪が動く様子を表示するように Nightlight プロジェクトを調整します。