小テストジェネレーター

記事一覧へ

Micro:bit #3 ブザーを鳴らす

タグ:Micro:bit

記事執筆日:2021年03月23日(火) 18時36分32秒 +0900

記事更新日:2021年03月23日(火) 18時44分55秒 +0900



 2021年3月22日の小6向けプログラミング講座の記録です。 


まずは前回の続き

前回Micro:bitでLEDを点滅させたり呼吸するような光らせ方をしましたが、今回はその両方を繰り返すコードを書きました。ただ、そのままコードを混ぜるだけでは面白くないので、消費電力3Wの結構明るいLEDに変更してみました。
プロジェクト4.jpg 1.22 MB
直接見ると目が痛いくらい明るいです。


今回の実験(ひとつめ)

今回は主にブザーを取り上げました。
2020年に発売された新型のMicro:bit (V2)には本体にスピーカー(ブザー)が内蔵されているのですが、それ以前のモデルでは以下のように外付けが必要です。
ブザーは大きく分けてアクティブ方式とパッシブ方式の2つです。
まずは電力を多めに使って大きな音量を出せるアクティブブザーから使用。
プロジェクト5.jpg 1.1 MB
このアクティブブザーはデジタル信号を受け取るので、Micro:bit本体の端子からデジタル出力します。
keyestudioのアクティブブザーには初めにシールが貼ってあり、このシールをはがすととんでもない音量で音が鳴ります。とりあえず貼ったままにしておきました。上記のコードでは、決まった音程でブーブーなるだけです。

今回の実験(ふたつめ)

その次は追加電力を使わないパッシブ方式のブザーで、振動数を自分でコントロールする実験(コード1)とMakeCode Editor内の音楽を鳴らす機能を使った実験(コード2)です。
プロジェクト6.jpg 1.99 MB
上記の「コード1」では、ぱっと見は何をしているコードなのかわかりにくいですが、ブザーの中にある振動版を1秒間に何回も震わせる(デジタル出力の0と1を繰り返す)ことで音を鳴らしています。つまり、音程を変更するにはこの間隔(待機時間)を変更すればいいわけです。

「コード2」では音楽を鳴らしています。
音を出すブロックは、裏側のJavaScriptではこのようなコードに変換されています。
music.playTone(659, music.beat(BeatFraction.Double))

music.playTone(698, music.beat(BeatFraction.Whole))
3ケタの数字部分が音の周波数(振動数)ですね。
記事一覧へ