ダイオードは、電気電子回路の中でも基本的な回路素子の1つです。ダイオードはPN接合と呼ばれる構造を内部に持っており、電流を一方向にのみ流す整流作用を持ちます。
P型半導体からの端子をアノード、N型半導体からの端子をカソードと呼んでいます。ダイオードはこのように、アノード側の端子とカソード側の端子の2つがある、方向性のあるIC部品となっています。
本記事の内容
- P型・N型半導体の基礎
- PN接合の物理的原理
- ダイオードのI-V特性と数式
- 整流回路への応用
- PythonでのI-V特性シミュレーション
P型半導体とN型半導体
半導体とは
半導体(Semiconductor)は、導体と絶縁体の中間の電気抵抗を持つ物質です。シリコン(Si)が最も代表的な半導体材料です。
シリコンの結晶構造では、各原子が4つの共有結合で隣接原子と結合しています。純粋なシリコンは電気をほとんど通しませんが、不純物を添加(ドーピング)することで電気的特性を制御できます。
N型半導体
シリコンに5価元素(リンPなど)をドーピングすると、余剰の電子が生じ、自由電子がキャリアとなります。負(Negative)のキャリアが多いためN型と呼ばれます。
P型半導体
シリコンに3価元素(ホウ素Bなど)をドーピングすると、電子の不足(正孔, hole)が生じます。正(Positive)のキャリアが多いためP型と呼ばれます。
PN接合
P型半導体とN型半導体を接合すると、接合面付近にキャリアのない領域(空乏層, depletion region)が形成されます。空乏層には内部電界(ビルトインポテンシャル $V_{bi}$)が生じます。
$$ V_{bi} = \frac{kT}{q}\ln\left(\frac{N_A N_D}{n_i^2}\right) $$
ここで、 * $k = 1.38 \times 10^{-23}$ J/K: ボルツマン定数 * $T$: 絶対温度 [K] * $q = 1.6 \times 10^{-19}$ C: 電子の電荷 * $N_A$, $N_D$: アクセプタ・ドナー濃度 * $n_i$: 真性キャリア濃度(Siで約 $1.5 \times 10^{10}$ cm$^{-3}$, 300K)
ダイオードのI-V特性
ダイオードの電流-電圧特性はショックレーの式で表されます。
$$ I = I_s \left[\exp\left(\frac{V}{nV_T}\right) – 1\right] $$
ここで、 * $I_s$: 逆方向飽和電流($\sim 10^{-12}$ A) * $V_T = kT/q \approx 26$ mV(室温): 熱電圧 * $n$: 理想因子(1〜2)
順方向バイアス
アノード側に正の電圧を印加すると、空乏層が薄くなり電流が流れます。シリコンダイオードでは約0.6〜0.7 Vから電流が急激に増加します。
逆方向バイアス
カソード側に正の電圧を印加すると、空乏層が広がり、ごくわずかな逆方向飽和電流 $I_s$ のみが流れます。
降伏(ブレークダウン)
逆方向電圧が降伏電圧 $V_{BR}$ を超えると、急激に電流が流れます。ツェナーダイオードはこの特性を積極的に利用します。
ダイオードの応用: 半波整流回路
交流電圧を直流に変換する最も基本的な回路が半波整流回路です。
入力電圧 $v_{\text{in}} = V_m \sin(\omega t)$ に対し、出力電圧は、
$$ v_{\text{out}} = \begin{cases} v_{\text{in}} – V_D & (v_{\text{in}} > V_D) \\ 0 & (v_{\text{in}} \leq V_D) \end{cases} $$
ここで $V_D \approx 0.7$ V はダイオードの順方向電圧降下です。
平均出力電圧は、
$$ V_{\text{avg}} = \frac{V_m}{\pi} $$
Pythonでのシミュレーション
import numpy as np
import matplotlib.pyplot as plt
# ダイオードのパラメータ
Is = 1e-12 # 逆方向飽和電流 [A]
n = 1.0 # 理想因子
VT = 0.026 # 熱電圧 [V] (T=300K)
def diode_current(V, Is=1e-12, n=1.0, VT=0.026):
"""ショックレーの式によるダイオード電流"""
return Is * (np.exp(V / (n * VT)) - 1)
# I-V特性
fig, axes = plt.subplots(2, 2, figsize=(14, 10))
# 順方向特性
V_fwd = np.linspace(0, 0.8, 1000)
I_fwd = diode_current(V_fwd)
axes[0, 0].plot(V_fwd, I_fwd * 1000, 'b-', linewidth=2)
axes[0, 0].set_xlabel('Voltage [V]')
axes[0, 0].set_ylabel('Current [mA]')
axes[0, 0].set_title('Diode Forward I-V Characteristic')
axes[0, 0].grid(True)
axes[0, 0].set_ylim(0, 100)
# 対数スケール
V_range = np.linspace(-1, 0.8, 2000)
I_range = diode_current(V_range)
axes[0, 1].semilogy(V_range, np.abs(I_range), 'r-', linewidth=2)
axes[0, 1].set_xlabel('Voltage [V]')
axes[0, 1].set_ylabel('|Current| [A]')
axes[0, 1].set_title('Diode I-V (Log Scale)')
axes[0, 1].grid(True)
axes[0, 1].set_ylim(1e-14, 1)
# 温度依存性
for T in [250, 300, 350, 400]:
VT_temp = 1.38e-23 * T / 1.6e-19
I_temp = diode_current(V_fwd, VT=VT_temp)
axes[1, 0].plot(V_fwd, I_temp * 1000, label=f'T = {T} K')
axes[1, 0].set_xlabel('Voltage [V]')
axes[1, 0].set_ylabel('Current [mA]')
axes[1, 0].set_title('Temperature Dependence')
axes[1, 0].legend()
axes[1, 0].grid(True)
axes[1, 0].set_ylim(0, 50)
# 半波整流
f = 50 # 電源周波数 [Hz]
Vm = 5 # ピーク電圧 [V]
Vd = 0.7 # ダイオード順方向電圧
t = np.linspace(0, 0.06, 3000)
v_in = Vm * np.sin(2 * np.pi * f * t)
v_out = np.where(v_in > Vd, v_in - Vd, 0)
axes[1, 1].plot(t * 1000, v_in, 'b-', label='Input', alpha=0.7)
axes[1, 1].plot(t * 1000, v_out, 'r-', linewidth=2, label='Output')
axes[1, 1].set_xlabel('Time [ms]')
axes[1, 1].set_ylabel('Voltage [V]')
axes[1, 1].set_title('Half-Wave Rectifier')
axes[1, 1].legend()
axes[1, 1].grid(True)
plt.tight_layout()
plt.show()
# 特性値の計算
print("=== ダイオード特性値 ===")
print(f"逆方向飽和電流 Is = {Is:.2e} A")
print(f"熱電圧 VT = {VT*1000:.1f} mV (T=300K)")
V_on = n * VT * np.log(1e-3 / Is + 1)
print(f"順方向電圧 (I=1mA): {V_on:.3f} V")
V_on_10 = n * VT * np.log(10e-3 / Is + 1)
print(f"順方向電圧 (I=10mA): {V_on_10:.3f} V")
まとめ
本記事では、ダイオードの仕組みとPN接合の原理について解説しました。
- ダイオードはPN接合による整流作用を持つ基本的な半導体素子である
- P型半導体は正孔、N型半導体は自由電子がキャリアとなる
- PN接合には空乏層とビルトインポテンシャルが形成される
- I-V特性はショックレーの式 $I = I_s[\exp(V/nV_T) – 1]$ で記述される
- 整流回路はダイオードの最も基本的な応用である
次のステップとして、以下の記事も参考にしてください。