NPNトランジスタの増幅回路でブザー音量を大きくする方法【Arduino】
こんにちは、せでぃあ(@cediablog)です。
本記事では、NPN型バイポーラトランジスタを使ってブザー音量を大きくする方法を紹介します。
トランジスタを使うとArduinoの出力電流制限を回避させることができ、その結果ブザー音量が大きくなるという実例紹介を分かりやすく解説しています!
タクトスイッチを押したら、パッシブブザーからメロディーが1回流れる。
メロディーは「ド・レ・ミ・ファ・ミ・レ・ド」とする。
本記事ではELEGOOスーパースターターキットに含まれる「トランジスタ」「Arduino(マイコン)」「パッシブブザー」などを使って回路を構築しています。
- トランジスタの役割と仕組み
- ブザーの音量を大きくする方法
- Arduinoを使ったトランジスタ増幅回路例
せでぃあはこんな人物です
✅プライム企業に勤める電気・機械設計エンジニア
✅親子の絆を深めるため、夏休みに子供と一緒に電子工作を製作
✅Arduinoプログラミングを用いて作ったプログラミング電子工作「信GO機」が市の発明くふう展で「優秀賞」を受賞
✅本ブログにてArduinoスクラッチプログラミングLESSON記事投稿中
✅YouTubeチャンネル「せでぃあブログちゃんねる」運営中
トランジスタの種類
トランジスタは動作機構の違いにより、バイポーラトランジスタとユニポーラトランジスタに分けられます。
- バイポーラトランジスタ:正孔(プラス極性)と電子(マイナス極性)が互いに関与する。
- ユニポーラトランジスタ:正孔(プラス極性)と電子(マイナス極性)のどちらか一方が関与する。
今回使用するトランジスタはバイポーラトランジスタになります。
バイポーラトランジスタは構成の違いにより、「PNP型」と「NPN型」に分けられます。
今回はNPN型トランジスタを使用しています。
トランジスタの役割
トランジスタの役割は大きく分けて2つあります。
トランジスタの役割
- スイッチング
- 信号増幅
スイッチング機能
スイッチング特性は「回路に電流を流すか流さないかを切り替える機能」です。
トランジスタの場合は、ベースに電流を流すことでコレクタ-エミッタ間を導通させる機能を持ちます。
スイッチング機能と言えば、有接点リレーを思い浮かべる方も多いと思います。
トランジスタは有接点リレーと比較して「流せる電流が小さい」デメリットがある一方で、「スイッチングトリガー電流値が小さい」「スイッチング速度が早い」というメリットを持ちます。
リレーのコイルを励磁させるためにはArduinoデジタル入出力ピンの定格出力40mA以上必要になるケースが多いので、トランジスタの存在は有り難いです。
信号増幅機能
トランジスタのもう一つの役割として信号増幅機能があります。
トランジスタには、ベースに流れる電流を増幅させてコレクターエミッタ間に流す特性があります。
この増幅特性を電流増幅率(hFE)と呼び、トランジスタの型式ごとに異なります。
この信号増幅特性を利用してブザー音量を大きくします。
トランジスタの仕組み
今回使用するNPNトランジスタを例にして仕組みを解説します。
ベース電圧がかかっていない時は、空乏層と呼ばれる「電正や正孔(キャリア)がほとんど存在しない」絶縁領域が存在しています。
この空乏層の存在により、コレクターエミッタ間には電流が流れない状態が作られます。
ベースに電圧をかけることで、エミッタ側の電子がベース方向に流れてきます。
これによりベース電流(IB)が流れます。
電流は電子の動きと逆方向に流れます。
このベース電流は微弱なもので、ほとんどの電子がコレクタ側に流れます。
この現象により、プラスのコレクタ側からマイナスのエミッタ側に大きな電流が流れます。
つまり、わずかなベース電流から大きなコレクタ電流を得ることができる増幅作用が得られます。
また、ベース側への電圧のオンオフで電流制御を行うことでスイッチとしても用いることができるわけです。
データシートのチェックポイント
今回使用するNPNトランジスタ「PN2222」を使って回路を構築するにあたり、仕様を把握しておく必要があります。
基本的な仕様はデータシートに記載されていますが、そのなかでも抑えておくべきポイントを紹介します。
チェックポイント
- 端子割り当て
- 絶対最大定格
- 電気的特性
【参考】秋月電子通商のサイトからデータシートを参照できます。
端子割り当て
トランジスタの端子は「B:ベース、C:コレクタ、E:エミッタ」の3本あります。
この端子の並び順がトランジスタ型式によって異なるため、使用する際は都度確認が必要です。
PN2222の端子割り当ては、平らな面(印字面)を上にして左からEBCの順になります。
端子機能を間違って配線すると、トランジスタや接続機器を故障させるリスクがありますので注意してください。
絶対最大定格
データシートには、これ以上の値になるとトランジスタが壊れてしまう「絶対最大定格」が記載されています。
特に注意したい値
- VCEO(コレクターエミッタ電圧):コレクターエミッタ間にかけても良い最大電圧(V)
- VEBO(エミッターベース電圧):エミッターベース間にかけても良い最大電圧(V)
- IC(コレクタ電流):コレクタに流しても良い最大電流(mA)
- PC(コレクタ損失):「コレクタ電流×コレクターエミッタ電圧」の最大値(mW)
回路を構築する際には絶対定格値を超えないように注意してください。
電気的特性
電気的特性で注目すべき要素が「hFE」です。
hFEは直流電流増幅率といい、ベース電流の何倍までコレクタ電流を流すことができるかを示す値です。
データシートには100~300と記載されていましたが、オーム電機のデジタルテスター「TST-KJ830」を使ってhFEを測定したところ「237」という値が表示されました。
ベース電流「IB」は抵抗器を直列接続させて調節します。
Arduinoの出力電圧は5Vのため、抵抗器を2kΩにした場合のIBは下記となります。
IB=5(V)÷2000(Ω)=0.0025(A)=2.5(mA)
テスターで測定したhFE値が237でしたので、2.5×237=592.5mAが最大コレクタ電流ICとなります。
絶対最大定格IC=600mAにギリギリ収まる値ですが、実際はブザーの消費電流分しか消費しないので余裕です。
ブザー音量の増幅回路で使うもの
ブザー音量を大きくする回路で使用する機器を紹介します。
トランジスタの端子(E・B・C)との接続間違いをしないように注意してください。
- パソコン
- Arduino本体【キット】
- USBケーブル【キット】
- ブレッドボード【キット】
- NPNトランジスタ【キット】
- パッシブブザー【キット】
- タクトスイッチ【キット】
- 1kΩ抵抗器【キット】
- 2kΩ抵抗器【キット】
- ジャンパー線(オスーオス)×6本【キット】
今回はELEGOO社のスーパースターターキットに含まれる部品で作ることができますが、Arduino裏面のショート対策としてクリアケースも併せて準備することをおすすめします。
【おすすめ】コスパ最強のArduinoキットの中間グレードです!
パソコン
プログラムを作成するために必要です。
プログラム制御の演算はArduino側で行うため、パソコンのSPECは一般的なモデルで十分対応可能です。
パソコンのOSはWindows、Macどちらでも対応可能です。
Arduino本体【キット】
基本的なエディション「Arduino Uno」の互換機である、ELEGOO社のUNO R3を使用しています。
Arduino本体裏面のショート対策に、別売りのクリアケースの購入をおすすめしています。
各ソケットの役割など、Arduino本体の機能について以下の記事にて詳しく説明しています。
USBケーブル【キット】
パソコンとArduinoを接続してプログラムデータのやり取りをするために必要です。
ブレッドボード【キット】
たくさんの穴が開いていて、部品の端子を穴に差し込むだけで電気的に接続が可能な板です。
説明図は30列のショート版ですが、スーパースターターキットに含まれる63列タイプでも機能は同じです。
ブレッドボードだけの購入も可能です。
NPNトランジスタ(PN2222)【キット】
パッシブブザー【キット】
圧電スピーカーとも言われ、指定した周波数の矩形波の周波数により音色を変化させることができます。
タクトスイッチ【キット】
タクトスイッチは押しボタンスイッチとも言います。
ボタンが押されている間のみ、上記写真での2点が内部でつながります。
このようなボタンをモーメンタリボタンといいます。
抵抗(1kΩ)【キット】
1kΩの抵抗を1本使用し、タクトスイッチに接続します。
抵抗を接続するのは、タクトスイッチがOFFのときにArduino本体がノイズによる誤検出することを避けるためです。
この記事では詳しく説明しませんが、ボタンを押していないのに押されたと誤認識されることを避ける目的であるということだけ覚えておいてください。
抵抗(2kΩ)【キット】
2kΩの抵抗を1本使用し、ベースに流れる電流を調整するために使います。
抵抗器に極性はありません。
ジャンパー線(オスーオス)【キット】
ジャンパー線を1本使用します。
Arduino本体とブレッドボードの接続に使います。
スーパースターターキットに含まれる機器に関しては、以下の記事にて詳しく紹介しています。
ブザーの音量増幅回路の配線方法
ここからは、各機器間の配線方法について解説します。
Arduinoデジタル入出力ピンは「3番ピン」に接続します。
上図が配線説明図となりますので、これと同じ配線をすれば完成します。
機器が故障するおそれがあるので、接続するプラスマイナス極性には十分注意して配線してください。
トランジスタの各端子への配線を間違えないように注意してください。
機器故障させないためにも、「通電OFF」状態にて配線を行ってください。
動作プログラム
今回はスクラッチベースのビジュアルプログラミングツール「mBlock」を使ってプログラムを作成しました。
タクトスイッチ入力2番ピンの入力信号がHIGHになったら、3番ピンに接続したパッシブブザーを「ドレミファミレド」の順に鳴動させるプログラムになります。
Arduino IDEで言う「tone関数」の機能ブロックを使ってプログラムを作っています。
パッシブブザーの仕組みや音程の作り方については、こちらの記事にて詳しく説明しています。
動作の確認
タクトスイッチを押したら、パッシブブザーからメロディーが1回流れる。
メロディーは「ド・レ・ミ・ファ・ミ・レ・ド」とする。
トランジスタの増幅特性により、パッシブブザーの音量がどれくらい大きくなったのか動画を見て確認してみてください。
トランジスタ接続無と接続して増幅回路を構築した場合とで、ブザーに流れる電流値を比較してみました。
トランジスタ有無による電流値の違い
- トランジスタ無し:41.5mA前後
- トランジスタ有り:78.0mA前後
トランジスタによる接点増幅回路構築時の方が、Arduinoと直接接続時と比較してブザーに流れる電流値が約2倍になっていることがわかります。
動作電圧はどちらも5Vなので、出力(mW)=音量が大きくなります。
トランジスタでブザー音量を大きくできる(まとめ)
- トランジスタはスイッチング機能と信号増幅機能を併せ持つ
- コレクタ電流の上限値はベース電流とhFEで決まる。
- データシートを見て端子割り当てや絶対最大定格のチェックが必要。
トランジスタを使うことで、簡単にブザーの音量を大きくすることができました。
トランジスタの増幅特性を耳で感じ取ることができるところが面白いと思います。
またArduinoデジタル入出力ピンの定格電流値は40mAですが、トランジスタを使うことで40mA以上流す必要がある機器を制御するときにも活用できます。
リレーやモーターなど、40mA以上機器に流す必要がある場合はトランジスタの増幅回路を使って見てはいかがでしょうか。
絶対最大定格を超えないように注意して使って下さい。
最後まで読んでいただき、ありがとうございました。
パッシブブザーの音色制御プログラム方法を分かりやすく解説しています。
Arduinoスクラッチプログラミングのおすすめ参考書について詳しく説明しています。
子供の成長を育む!小学生のお子様にぴったりなプログラミング教室が見つかるように厳選しました!
コメント