Skip to content

アクティビティ

メトロノーム

初級 | MakeCode, Python | LED表示, ボタン, | テンポ, 反復処理

ステップ1: 作る

説明

音楽の練習のためのに一定のテンポをきざむ電子メトロノームを作ります。テンポを変えることもできますよ。

はじめに

プログラミングガイド

学ぶこと

  • micro:bit で演奏する音符のテンポを調整する方法
  • 入力ボタンとオーディオ出力を使って便利な電子機器を作る方法

動作の仕組み

  • プログラムの最初にテンポを 100 bpm (ビート/分)に設定します。 これは音楽のテンポまたは速度を決める標準的な方法です。
  • micro:bit が短く音符を鳴らして一拍休ませることを永久ループで繰り返します。
  • 端子 0 と GND に取り付けたヘッドフォンや新しい micro:bit の内蔵スピーカーで音が聞けます。
  • A ボタンを押したらテンポを 5 bpm 遅くします。
  • Bボタンを押したらテンポを 5 bpm 速くします。
  • ボタンAとBを同時に押すと、現在のテンポがLEDディスプレイ出力に表示されます。

必要なもの

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

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

1from microbit import *
2import music
3tempo = 100
4
5while True:
6    music.set_tempo(bpm=tempo)
7    music.play(['C4:1', 'r:3']) # play C for 1 tick, rest for 3 ticks
8    if button_a.was_pressed():
9        tempo -= 5
10    if button_b.was_pressed():
11        tempo += 5  
12    

ステップ3: 改善する

  • 同じ BPM 設定の電子楽器と比べると、若干リズムが遅くなっていることに気づくかもしれません。これは、各ループが1拍ではなく、1拍と16分の1拍をとるためです。
  • 1拍の端数を足して1拍にすることで、より正確な音を出すことができます。例えば1/2 + 1/4 + 1/8 + 1/16 で 15/16 となりますが、ここで1/16 拍分の音を足していることで、より正確に演奏することができるのです。
  • 「ずっと」ブロックには多少の遅延があります。「もし真ならくりかえし」を使うとコードがスピードアップしてより正確になります。
  • このページの上にある作成ビデオでは、この方法を説明します。
15/16 になるまでビートの端数を足すことを示すグリッド