トランジスタを用いた基本回路のうち、特に増幅回路についてまとめます。利用するトランジスタは、古くから利用されており情報量の多い 2SC1815 とします。生産終了 discontinued 状態のため将来的に入手できなくなる恐れがありますが、基本的な考え方は他のトランジスタでも同じです。
回路図
回路図とは異なり、実際のトランジスタの端子は「コレクタ C, ベース B, エミッタ E」の順番ではないことに注意してください。データシートを参照して回路を組みます。
変動する入力電圧を用意
交流電源を用意するのではなく、入手性のよいパーツのみを用いて変動する入力電圧を用意します。単三乾電池 4 本を直列に接続して 6V 電源を用意します。可変抵抗 10kΩ および抵抗 33kΩ を直列にして電源に接続します。可変抵抗の値を 0 から 10kΩ の間で変化させると回路図における 47μF 電解コンデンサの正極の電圧値はおおよそ 6V から 4.6V の間を変動します。手動で可変抵抗の値を一定周期で変化させることで、(6 + 4.6)/2 = 5.3 V
程度のバイアスがかかった、振幅 0.7V 程度の交流の入力電圧を用意できたことになります。
出力電圧をオシロスコープで観測
0.1μF のフィルムコンデンサでバイアスを取り除いた出力電圧の波形を観測すると 0V を中心として 1.4V から -1.4V の間を変動していることが分かります。47μF と 0.1μF の間のトランジスタを含む部分の回路が増幅回路として機能しており、振幅 0.7V の入力電圧を二倍に増幅したことになります。
2.0V/div の画像
1.0V/div に拡大した画像
二倍に増幅させるためのパラメータ設定
今回用いた回路は、NPN 型バイポーラトランジスタ 2SC1815 を用いたエミッタ接地の増幅回路です。入力信号を二倍にして出力するようにコンデンサの容量や抵抗の値を決めました。
hFE をデータシートから調べる、Ic を決める
2SC1815 のデータシートによると、温度が 25 度から 100 度までの間であるとき、コレクタ電流 Ic が 0.1mA から 30mA 程度までの間、直流電流増幅率 hFE は安定して 150 から 200 の間であることが分かります。ここでは hFE を 200 とします。また、Ic を 1mA とすることにします。
hFE = 200
Ic = 1 [mA]
Ib を求める
電流増幅率 hFE とコレクタ電流 Ic が決まりましたので、ベース電流 Ib は Ib = Ic / hFE = 5μA
となります。
Ib = 5 [μA]
Vbe をデータシートから調べる
ベース・エミッタ間電圧 Vbe は 2SC1815 のデータシートによるとおおよそ 0.6V であることが分かります。
Vbe = 0.6 [V]
Ve を決める
今回想定する入力電圧の振幅は 0.7V です。そのため、エミッタ電圧 Ve は最低でも 0.7V は必要になります。余裕をみて Ve = 1.5V
とします。
Ve = 1.5 [V]
Vb を求める
Ve と Vbe が決まりましたので、ベース電圧 Vb は Vb = Ve + Vbe = 1.5 + 0.6 = 2.1V
となります。
Vb = 2.1 [V]
エミッタ側の抵抗値を求める
今回に限らず、一般にベース電流 Ib はコレクタ電流 Ic およびエミッタ電流 Ie と比較して非常に小さいため、計算上は Ic = Ie
として問題ありません。Ve と Ic が決まりましたので、エミッタ側の抵抗値は Ve / Ie = Ve / Ic = 1.5 / 1.0 = 1.5 kΩ
となります。
エミッタ側の抵抗値 1.5 [kΩ]
今回の回路では簡単のために省略してありますが、エミッタ側の端子には、抵抗と並列してコンデンサを接続するのが一般的です。このコンデンサは特にバイパスコンデンサとよばれます。エミッタ電流 Ie が変化してもエミッタ電圧 Ve が安定するようになります。
コレクタ側の抵抗値を決める
入力電圧の変化率はエミッタ側の抵抗の両端にかかる電圧値の変化率とほぼ等しくなりますので、二倍に増幅させるためには、この変化率の二倍の電圧変化がコレクタ側の抵抗の両端において発生すればよいことになります。今回に限らず、一般にベース電流 Ib はコレクタ電流 Ic およびエミッタ電流 Ie と比較して非常に小さいため Ic = Ie
として考えてよいため、エミッタ側の抵抗値の二倍の値をコレクタ側の抵抗値として設定すればよく、1.5 * 2 = 3.0 kΩ
となります。
コレクタ側の抵抗値 3.0 [kΩ]
Vc を求める
コレクタ側の抵抗値とコレクタ電流 Ic が決まりましたので、コレクタ電圧 Vc は 電源電圧 6.0 - 3.0 * Ic = 3.0 V
となります。今回想定する入力電圧の振幅は 0.7V です。これを二倍に増幅させるとすると、出力電圧の振幅は 1.4V となります。これは Vc = 3.0V
よりも余裕をもって小さいため実現可能です。増幅率を上げるためにコレクタ側の抵抗を大きくしすぎると Vc が小さくなりすぎてしまい出力電圧の振幅を確保できなくなりますが、少なくとも二倍までは今回の設定において問題ないということになります。
Vc = 3.0 [V]
以下は、オシロスコープで観測した Vc の波形です。おおよそ Vc = 3.0 V
を中心として変動しています。
ベース側の抵抗値を決める
入力信号に応じてコンデンサに充電および放電される電荷を安定して供給するために、ベース側の抵抗の電流は Ib = 5μA
よりも十分大きな値である必要があります。ここでは約 20 倍の電流が流れるようにします。I = 0.005 * 20 = 0.1mA
によって「電源電圧 6V → Vb 約 2.1 V → GND 0V」の電圧降下が発生する必要があります。R1 = (6 - 2.1) / (I + Ib) = 37 kΩ
および R2 = 2.1 / I = 21 kΩ
となります。Vb = 2.1 V
はデータシートから調べたおおよその値でしたので、ここでは 33kΩ、20kΩ を用いることにします。
ベース側の抵抗値 33 [kΩ], 20 [kΩ]
コンデンサの容量
増幅回路の入力と出力に接続された二つのコンデンサは、バイアスを取り除くためのものです。出力側には 4.7 MΩ の抵抗を設置しているため 0.1 μF 程度でもすぐに充電および放電が完了することはなく問題になりませんが、入力側の抵抗は 20kΩ と小さいため、ここでは 47 μF の電解コンデンサを設置しました。時定数 RC は、入力側 20/1000 * 47 = 0.94s
、出力側 4.7 * 0.1 = 0.47s
となります。Vb が 2.1 V であり、入力電圧 4.6V 〜 6.0V より常に小さいため、電解コンデンサの正極は入力電圧側とします。
入力側コンデンサ 4.7 [μF]
出力側コンデンサ 0.1 [μF]
関連記事
- 輪郭に関連した画像処理 (OpenCV3 C++)cv::Canny などで検出したエッジをもとに cv::findContours で輪郭を計算できます。輪郭に関連した処理の例を記載します。 輪郭の描画 #include <opencv2/opencv.hpp> #in
- Qt for Python (PySide2) の基本的な使い方QT を Python から利用するためのライブラリには PyQt や PySide 等が存在します。PySide は元々 QT4 向けのライブラリでしたが、QT5 に対応するために新たに PySide2 が開発されました。PySide2 は Qt for Python ともよばれています。 Q: PySide? Qt for Python? what is the name?A: The nam...
- OpenGL を Python3 から利用するための環境設定および簡単なサンプルコード (Linux)コンピュータグラフィックスのレンダリングライブラリの一つである OpenGL を Python3 から利用するための Linux 環境を準備して、設定例およびサンプルコードを記載します。特にここでは Debian9 を利用します。 Getting Started [Language bindings / Python](ht
- 立方体を回転させるサンプル (OpenGL、Python)立方体を二つ配置して回転させてみます。ライブラリを用いずに OpenGL API を直接利用します。 wget https://gist.githubusercontent.com/harubot/df886254396a449038ee542ed317f7b3/raw/92216e02d0210b9d81770562ddf7741339f1b286/opengl-setup2.py DISPLA...
- Open Dynamics Engine によるロボットの自己位置の推定 (Python)ロボットアプリケーションを開発する際に、ロボットの自己位置を推定する必要がある場合を考えます。ここでは Open Dynamics Engine を Python から利用した場合について、自己位置推定のサンプルを記載します。自己位置推定と環境の地図作成を同時に行う場合を SLAM (Simultaneous Localization and Mapping) とよびます。 検証に用いる車輪型ロボ...