テブナンの定理とノートンの定理

テブナンの定理(Thevenin’s theorem)とノートンの定理(Norton’s theorem)は、複雑な回路を単純な等価回路に置き換える強力な手法です。どんな線形回路も、端子から見れば「電圧源+直列抵抗」または「電流源+並列抵抗」と等価であるという驚くべき事実を述べています。

本記事の内容

  • テブナンの等価回路($V_\text{th}$, $R_\text{th}$)
  • ノートンの等価回路($I_N$, $R_N$)
  • 等価性の証明
  • 求め方の手順
  • Pythonでの計算と可視化

前提知識

この記事を読む前に、以下の記事を読んでおくと理解が深まります。

テブナンの定理とは

定理の記述

任意の線形二端子回路は、端子間の開放電圧 $V_\text{th}$ とテブナン等価抵抗 $R_\text{th}$ を用いて、以下の等価回路で置き換えることができます。

$$ \boxed{V_\text{th} = V_\text{oc}, \quad R_\text{th} = \frac{V_\text{oc}}{I_\text{sc}}} $$

ここで $V_\text{oc}$ は開放電圧(端子を開放したときの端子間電圧)、$I_\text{sc}$ は短絡電流(端子を短絡したときに流れる電流)です。

テブナンの等価回路は、$V_\text{th}$ の電圧源と $R_\text{th}$ の抵抗が直列に接続された回路です。負荷 $R_L$ を接続すると:

$$ I_L = \frac{V_\text{th}}{R_\text{th} + R_L} $$

ノートンの定理とは

任意の線形二端子回路は、短絡電流 $I_N$ とノートン等価抵抗 $R_N$ を用いて、以下の等価回路で置き換えることができます。

$$ \boxed{I_N = I_\text{sc}, \quad R_N = R_\text{th}} $$

ノートンの等価回路は、$I_N$ の電流源と $R_N$ の抵抗が並列に接続された回路です。

等価性の証明

テブナンとノートンの等価回路が同じ端子特性を持つことを示します。

テブナン回路の端子電圧:

$$ V = V_\text{th} – R_\text{th} I $$

ノートン回路の端子電流:

$$ I = I_N – \frac{V}{R_N} $$

$V$ について整理すると:

$$ V = R_N I_N – R_N I $$

両者が一致するためには:

$$ V_\text{th} = R_N I_N, \quad R_\text{th} = R_N $$

すなわち:

$$ \boxed{I_N = \frac{V_\text{th}}{R_\text{th}}, \quad R_N = R_\text{th}} $$

これはテブナン←→ノートン変換の公式でもあります。

テブナン等価回路の求め方

手順を整理します。

ステップ1: 負荷を取り外し、端子を開放して $V_\text{oc}$ を求める

ステップ2: 端子を短絡して $I_\text{sc}$ を求める

ステップ3: 等価抵抗を計算する

$$ R_\text{th} = \frac{V_\text{oc}}{I_\text{sc}} $$

あるいは、独立電源を全て無効化(電圧源→短絡、電流源→開放)して、端子間の合成抵抗を求める方法もあります。

具体例

回路: $E = 12$ V、$R_1 = 4$ $\Omega$、$R_2 = 6$ $\Omega$ が直列接続。$R_2$ の両端がテブナン等価回路の端子です。

開放電圧(分圧):

$$ V_\text{th} = V_\text{oc} = E \cdot \frac{R_2}{R_1 + R_2} = 12 \times \frac{6}{4 + 6} = 7.2 \text{ V} $$

等価抵抗($E$ を短絡、端子から見た抵抗):

$$ R_\text{th} = R_1 \| R_2 = \frac{R_1 R_2}{R_1 + R_2} = \frac{4 \times 6}{4 + 6} = 2.4 \text{ Ω} $$

ノートン電流:

$$ I_N = \frac{V_\text{th}}{R_\text{th}} = \frac{7.2}{2.4} = 3.0 \text{ A} $$

最大電力伝送定理

テブナンの定理から、負荷に最大電力が伝送される条件を導出できます。負荷 $R_L$ の消費電力:

$$ P_L = I_L^2 R_L = \left(\frac{V_\text{th}}{R_\text{th} + R_L}\right)^2 R_L $$

$P_L$ を $R_L$ で微分してゼロとおくと:

$$ \frac{dP_L}{dR_L} = V_\text{th}^2 \cdot \frac{(R_\text{th} + R_L)^2 – 2R_L(R_\text{th} + R_L)}{(R_\text{th} + R_L)^4} = 0 $$

$$ R_\text{th} + R_L – 2R_L = 0 \implies \boxed{R_L = R_\text{th}} $$

負荷抵抗がテブナン等価抵抗に等しいとき、最大電力が伝送されます。最大電力は:

$$ P_\text{max} = \frac{V_\text{th}^2}{4R_\text{th}} $$

Pythonでの実装

import numpy as np
import matplotlib.pyplot as plt

# === テブナン等価回路の計算 ===
E = 12.0     # 電圧源 [V]
R1 = 4.0     # [Ω]
R2 = 6.0     # [Ω]

# テブナン等価パラメータ
V_th = E * R2 / (R1 + R2)
R_th = R1 * R2 / (R1 + R2)
I_N = V_th / R_th

print(f"テブナン電圧 V_th = {V_th:.2f} V")
print(f"テブナン抵抗 R_th = {R_th:.2f} Ω")
print(f"ノートン電流 I_N  = {I_N:.2f} A")

# === 負荷抵抗を変化させた解析 ===
R_L = np.linspace(0.01, 20, 500)
I_L = V_th / (R_th + R_L)
V_L = I_L * R_L
P_L = I_L**2 * R_L
P_max = V_th**2 / (4 * R_th)

fig, axes = plt.subplots(2, 2, figsize=(12, 9))

# (a) V-I特性(テブナン&ノートン)
I_range = np.linspace(0, I_N * 1.2, 100)
V_thevenin = V_th - R_th * I_range
axes[0, 0].plot(I_range, V_thevenin, 'b-', linewidth=2, label='Thevenin/Norton')
axes[0, 0].plot(0, V_th, 'ro', markersize=10, label=f'$V_{{oc}}={V_th:.1f}$ V')
axes[0, 0].plot(I_N, 0, 'gs', markersize=10, label=f'$I_{{sc}}={I_N:.1f}$ A')
axes[0, 0].set_xlabel('電流 $I$ [A]')
axes[0, 0].set_ylabel('電圧 $V$ [V]')
axes[0, 0].set_title('端子のV-I特性')
axes[0, 0].legend()
axes[0, 0].grid(True, alpha=0.3)

# (b) 負荷電流と負荷電圧
axes[0, 1].plot(R_L, I_L, 'b-', linewidth=2, label='$I_L$')
ax2 = axes[0, 1].twinx()
ax2.plot(R_L, V_L, 'r-', linewidth=2, label='$V_L$')
axes[0, 1].set_xlabel('$R_L$ [Ω]')
axes[0, 1].set_ylabel('電流 [A]', color='b')
ax2.set_ylabel('電圧 [V]', color='r')
axes[0, 1].set_title('負荷抵抗 vs 電流・電圧')
axes[0, 1].grid(True, alpha=0.3)

# (c) 最大電力伝送
axes[1, 0].plot(R_L, P_L, 'g-', linewidth=2)
axes[1, 0].axvline(R_th, color='r', linestyle='--', label=f'$R_L = R_{{th}} = {R_th:.1f}$ Ω')
axes[1, 0].axhline(P_max, color='gray', linestyle=':', alpha=0.5)
axes[1, 0].plot(R_th, P_max, 'ro', markersize=10,
                label=f'$P_{{max}} = {P_max:.2f}$ W')
axes[1, 0].set_xlabel('$R_L$ [Ω]')
axes[1, 0].set_ylabel('電力 [W]')
axes[1, 0].set_title('最大電力伝送定理')
axes[1, 0].legend()
axes[1, 0].grid(True, alpha=0.3)

# (d) 効率
eta = R_L / (R_th + R_L)
axes[1, 1].plot(R_L, eta * 100, 'purple', linewidth=2)
axes[1, 1].axvline(R_th, color='r', linestyle='--', label=f'$R_L = R_{{th}}$(効率50%)')
axes[1, 1].set_xlabel('$R_L$ [Ω]')
axes[1, 1].set_ylabel('効率 [%]')
axes[1, 1].set_title('電力伝送効率')
axes[1, 1].legend()
axes[1, 1].grid(True, alpha=0.3)

plt.tight_layout()
plt.savefig('thevenin_norton.png', dpi=150, bbox_inches='tight')
plt.show()

まとめ

本記事では、テブナンの定理とノートンの定理について解説しました。

  • テブナンの等価回路: 電圧源 $V_\text{th}$ + 直列抵抗 $R_\text{th}$
  • ノートンの等価回路: 電流源 $I_N$ + 並列抵抗 $R_N$
  • 両者は $I_N = V_\text{th}/R_\text{th}$, $R_N = R_\text{th}$ で相互変換可能
  • 最大電力伝送: $R_L = R_\text{th}$ のとき $P_\text{max} = V_\text{th}^2 / (4R_\text{th})$

次のステップとして、以下の記事も参考にしてください。