今回のTonalBuzzerで利用するブザーは他励振タイプです。スイッチサイエンスで入手しました。

●「圧電スピーカーANYM-SPT08」のおもなスペック
- 動作電圧 ?~30V
- 動作電流 実測3.3V時0.1uA
●接続
赤色をGPIO21へ、黒色のリード線をGNDにつなぎました。
●クラスTonalBuzzer
さまざまなトーンを再生する音色のブザーを駆動します。
クラスgpiozero.TonalBuzzerr(pin, *, initial_value=None, mid_tone=Tone('A4'), octaves=1, pin_factory=None)
パラメータ:
pin (int or str) – ブザーが接続されているGPIOピン。 有効なピン番号は、ピン番号を参照。 これがNoneの場合、GPIODeviceErrorが発生する。 initial_value (float) – None (デフォルト)の場合、ブザーは最初はOFFになる。ブザーの初期値として-1〜1の値を指定できる。 mid_tone (int or str) – デバイスの中間値(0)で表されるトーン。デフォルトは「A4」(MIDIノート69)。 octaves (int) – ベース・ノートから離れることができるオクターブの数。デフォルトは1。つまり、値-1はベース・ノートの1オクターブ下になり、1はオクターブ上になります。つまり、A3からA5になり、デフォルトのベースノートはA4。 pin_factory (Factory or None) – APIの解説を読む。
play(tone)
与えられたトーンを再生する。 これは、Toneのインスタンスにすることも、Toneのインスタンスを構築するために使用できるものであれば何でもかまいません。
例; play("A4") play(220.0) play(60)
|
stop ()
ブザーをOFFにする。これは、valueを Noneにするのと同じ 。
|
is_active
ブザーが現在鳴っている場合Trueがは戻る。そうでない場合はFalseが戻る。
|
max_tone
ブザーが鳴らすことができる最高音、つまりvalueが 1のときに鳴る音 。
|
min_tone
ブザーが鳴らすことができる最低音、つまりvaluegが -1のときに鳴る音。
|
mid_tone
使用可能な中間トーン、つまりvalue が0のときに再生されるトーン。
|
octaves
使用可能なオクターブの数(mid_toneの上下)。
|
tone
ブザーが現在再生されているとToneが、ブザーが無音の場合をNoneを返す。このプロパティは、指定されたトーンを再生するように設定することもできる。
|
value
ブザーの状態を-1(最小トーンを表す)と1(最大トーンを表す)の間の値として表す。ブザーが現在無音であることを示す特別な値Noneにすることもできる。
|
|
●プログラム
from gpiozero import TonalBuzzer
bz = TonalBuzzer(27)
bz.play(440)
|
440Hzです。連続の演奏ではなく、時々止まります。

880Hzです。
