部品 · 読了まで3分

アクティブブザーとパッシブブザーの違い:ブザーとは?使い方を解説

アクティブブザーとパッシブブザーの見分け方、ブザーのしくみ、Arduinoへの配線、tone()関数、音階の周波数、メロディーの例を紹介します。

ブザーは、電気信号を音に変える小さなスピーカーです。防犯システムのビープ音、電子レンジのお知らせ音、おもちゃのメロディーは、たいていブザーから出ています。Arduinoのプロジェクトでは音で知らせるいちばん安い方法ですが、正しい音を出すには、手元のブザーがどの種類なのかを知っておく必要があります。

ブザー
ブレッドボードに差せる12 mmのブザー。長い足がプラス(+)です。

アクティブブザーとパッシブブザーの違い

項目アクティブブザーパッシブブザー
発振回路の内蔵ありなし
音を鳴らすにはHIGHを与えるだけ矩形波(周波数)が必要
音1つの決まった音好きな周波数:音階、メロディー
Arduinoの命令digitalWrite()tone() / noTone()
用途アラーム、警告のビープ音音楽、さまざまな通知音

ブザーがアクティブかパッシブかはどう見分ける?

  • 裏面を見る:パッシブブザーは裏側に緑色の基板が見えることが多く、アクティブブザーの裏側は黒い樹脂でふさがれています。
  • 5 Vをかける:アクティブブザーは鳴り続け、パッシブブザーはつないだ瞬間にかすかにカチッと鳴るだけです。
  • マルチメーターで測る:パッシブブザーのコイルは約16 Ωの低く安定した抵抗値を示します。アクティブブザーは値がはっきりしないか、とても高くなります。
  • シールを確認する:アクティブブザーには、上面に「はがしてください」と書かれた保護シールが貼られていることがよくあります。

ブザーをArduinoにつなぐ

小型のブザーの消費電流は約20〜30 mAなので、Arduinoのピンに直接つなげます。長い足(+)をデジタルピン、たとえば8番ピンに、短い足をGNDにつなぎます。音が大きすぎる場合は、100 Ω程度の抵抗を間に入れてもかまいません。大きくて強力なブザーは、トランジスタを通して駆動する必要があります。

tone()で音階やメロディーを鳴らす

パッシブブザーでは、tone(pin, frequency, duration)で指定した周波数の矩形波を出せます。音階にはそれぞれ周波数があり、たとえばA4(ラ)は440 Hzです。

音階ド(C4)レ(D4)ミ(E4)ファ(F4)ソ(G4)ラ(A4)シ(B4)ド(C5)
周波数(Hz)262294330349392440494523
C++ (Arduino IDE)
1const int BUZZER_PIN = 8;   // pasif buzzer / passive buzzer
2
3// Do Re Mi Fa Sol La Si Do
4int notes[] = {262, 294, 330, 349, 392, 440, 494, 523};
5
6void setup() {
7  for (int i = 0; i < 8; i++) {
8    tone(BUZZER_PIN, notes[i], 300); // 300 ms çal / play for 300 ms
9    delay(350);                      // notalar arası boşluk / gap between notes
10  }
11  noTone(BUZZER_PIN);                // sesi kapat / stop the sound
12}
13
14void loop() {
15}
このコードはアクティブブザーでは動きません。アクティブブザーはどの音階でも同じ音を出します。メロディーには必ずパッシブブザーを使ってください。

よくある失敗

  • アクティブブザーでメロディーを鳴らそうとする:内蔵の発振回路が決まった音を出すため、tone()では音の高さが変わりません。
  • tone()と一緒に3番と11番ピンでPWMを使う:Unoではtone()がTimer2を使うため、鳴らしている間はこれらのピンのanalogWriteが正しく動きません。
  • 2つのブザーを同時に鳴らす:tone()は一度に1本のピンでしか動きません。
  • 極性を逆にする:長い足がプラスです。逆につなぐと、アクティブブザーは鳴りません。

ボタンでピアノを作るなら、まずArduinoに押しボタンをつなぐ方法から始め、音の高さや音量をつまみで調整するにはポテンショメーターとは?を読んでみてください。

よくある質問

ブザーは抵抗なしでつなげますか?

小型のブザーの消費電流は20〜30 mAなので、ピンに直接つなげます。音量を下げたり、ピンを保護したりするには、100〜220 Ωの直列抵抗を入れてください。

ブザーの音がとても小さいのはなぜですか?

パッシブブザーにdigitalWriteでHIGHを与えた場合、音が出ないか、カチッと鳴るだけです。代わりにtone()を使ってください。ブザーの共振周波数(ふつうは2〜4 kHz)に近い音ほど大きく聞こえます。

ESP32やPicoでブザーを鳴らすにはどうすればいいですか?

ESP32では、現行のArduinoコアならtone()が使えます。古いバージョンではledcWriteToneを使います。PicoのMicroPythonでは、PWMの周波数を音階に合わせ、デューティ比を半分にします。

ブザーとスピーカーの違いは何ですか?

ブザーは小さく、単音を効率よく出せて、ピンから直接動かせます。スピーカーは幅広い周波数できれいな音を出せますが、アンプやDFPlayerのような音声モジュールが必要です。

全プロジェクトを見る
ブザーの使い方
#13初級

ブザーの使い方

呼び鈴やアラームがどうやって音を出すのか、気になったことはありませんか?Arduinoが小さなブザーを短い間隔で鳴らし、音を出す、止める、を繰り返します。電気で音が生まれる仕組みを学び、メロディーを演奏するプロジェクトへの第一歩を踏み出せます。

4.7(89)
161
ブザーの周波数を調整
#14中級

ブザーの周波数を調整

4つのボタンでブザーの音を操作します。1つは音を鳴らし、1つは音を止め、残りの2つは音を高くしたり低くしたりします。音を高くするボタンや低くするボタンを押し続けると、音程が段階的に変化し、サイレンのように聞こえます。音の高低が生まれる理由を、自分の耳で確かめられます。

4.6(69)
118
ブザーでトルコ国歌を演奏
#15中級

ブザーでトルコ国歌を演奏

ボタンを押すと、小さなブザーがトルコ国歌を1音ずつ演奏し始めます。Arduinoが各音を正しい音程と長さで鳴らし、国歌の2節を最初から最後まで演奏した後、次のボタン操作を待ちます。シンプルな音響部品からメロディーが生まれる様子を、自分の耳で確かめられます。

4.9(106)
213
IR受信機・リモコン・ブザーでメロディーを再生
#18初級
プレミアム

IR受信機・リモコン・ブザーでメロディーを再生

テレビのリモコンのボタンでメロディーを奏でるオルゴールを作ります。赤外線受信機がリモコンの信号を受け取り、1つ目のボタンで軽快なゲーム音楽、2つ目でおなじみの童謡、3つ目で新年の歌をブザーから流します。リモコンが目に見えない光で通信する仕組みと、音符を音に変える方法を学びます。

4.8(57)
74
ブザーとボタンで作る簡単なピアノ
#26上級
プレミアム

ブザーとボタンで作る簡単なピアノ

8個のボタンで小さなピアノを作ります。各ボタンには、低い音から順にド、レ、ミ、ファ、ソ、ラ、シ、高いドが割り当てられています。ボタンを押している間はブザーから音が鳴り、離すと止まります。簡単な曲を弾きながら、音符の正体が音の振動であることを実感できます。

4.9(66)
88
ESP32とブザーでメロディーを演奏
#114初級
プレミアム

ESP32とブザーでメロディーを演奏

パッシブブザーで簡単なメロディー「きらきら星」を演奏します。Arduinoと同じようにtone()とnoTone()で音を鳴らします。ESP32 Arduino Core 3.0+でも同じ構文が使えます。パッシブブザーを使用してください。アクティブブザーではメロディーを演奏できません。

4.8(30)
55
Arduino 音で知らせる反応速度テスト:反射神経をミリ秒で測ろう(LCD+ブザー+LED 3個)
#97中級
プレミアム

Arduino 音で知らせる反応速度テスト:反射神経をミリ秒で測ろう(LCD+ブザー+LED 3個)

反射神経はどれくらい速いでしょうか。ボタンを押すと、赤LEDが位置について、黄LEDが用意を知らせ、1.5〜3.5秒のランダムな待ち時間が始まります。緑LEDが光ってブザーが鳴った瞬間にもう一度押すと、反応時間がI2C LCDにミリ秒で表示され、下の行にその回の最高記録と平均が出ます。緑より先に押すと画面にTOO EARLY!と表示され、残念な音が鳴ります。ボタンを長押しすると新しいプレイヤーになり、全員が同じ待ち時間の順番で勝負できます。

4.6(33)
50