結合インダクタと変圧器の理論 — 相互インダクタンスからインピーダンス変換まで

スマートフォンの充電器は、コンセントの100Vを5Vに変換しています。送電線では数十万ボルトに昇圧して長距離を送り、家庭の近くで再び降圧しています。オーディオアンプでは、スピーカーのインピーダンスを増幅回路に合わせるためにトランスが使われます。これらの仕組みの中心にあるのが変圧器(transformer)です。

変圧器は電気エネルギーを磁気エネルギーに変換し、再び電気エネルギーに戻すことで、電圧を自在に変える素子です。その動作原理は結合インダクタ(coupled inductor)の理論、すなわち相互インダクタンスに基づいています。2つのコイルが共通の磁束で結ばれるとき、一方のコイルの電流変化が他方のコイルに起電力を誘導します。この現象を定量的に記述するのが相互インダクタンス $M$ です。

変圧器の理論を理解すると、以下のような応用が開けます。

  • 電力システム: 発電所から家庭までの送配電網は変圧器なしには成立しない。昇圧して送電ロスを減らし、降圧して安全に利用する
  • 電源回路: ACアダプタやスイッチング電源の絶縁と電圧変換は高周波トランスで実現される
  • 通信・高周波回路: バラン(balun)やインピーダンス変換トランスは、アンテナ給電やRF回路のマッチングに不可欠
  • オーディオ: マイクのインピーダンスマッチング、真空管アンプの出力トランス

本記事の内容

  • 電磁誘導の復習と相互インダクタンス $M$ の定義
  • 結合係数 $k$ と磁気結合の度合い
  • 変圧器の基本動作と理想変圧器モデル
  • 理想変圧器のインピーダンス変換
  • T型等価回路と漏洩・励磁インダクタンス
  • 変圧器の損失(銅損・鉄損)
  • 高周波変圧器とバラン
  • Pythonによる等価回路シミュレーションと周波数特性の可視化

前提知識

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

電磁誘導の復習 — なぜコイル同士が「つながる」のか

変圧器の理論に入る前に、その根幹となる電磁誘導の概念を復習しましょう。

日常的な場面で考えてみます。あなたが二本のストローを近くに並べ、一方に息を吹き込んだとします。もう一方のストローには何も起きません。しかし、この二本のストローを「磁場」という目に見えない媒質でつないだとしたらどうでしょうか。一方のコイルに電流を流すと、その電流が磁場を生みます。その磁場が変化すると、近くにあるもう一方のコイルに起電力が誘導されます。これが電磁誘導の本質です。

ファラデーの法則によれば、閉回路に誘導される起電力 $\mathcal{E}$ は、その回路を貫く磁束 $\Phi$ の時間変化率に比例します。

$$ \mathcal{E} = -\frac{d\Phi}{dt} $$

マイナス符号はレンツの法則を表しており、誘導される起電力は磁束の変化を妨げる向きに生じます。これはエネルギー保存則の帰結であり、もし磁束変化を助ける向きに起電力が生じたら、永久機関が実現してしまいます。

1つのコイル(巻数 $N$)が磁束 $\Phi$ を鎖交しているとき、鎖交磁束は $\lambda = N\Phi$ となり、誘導起電力は次のように書けます。

$$ \mathcal{E} = -\frac{d\lambda}{dt} = -N\frac{d\Phi}{dt} $$

この鎖交磁束の概念が、自己インダクタンスと相互インダクタンスの定義へとつながります。それでは次に、2つのコイルが磁気的に結合している状況を定量的に記述しましょう。

相互インダクタンス $M$ の定義

自己インダクタンスの復習

2つのコイルの結合を扱う前に、まず1つのコイルの性質を復習します。

コイルに電流 $i$ を流すと、コイル自身を貫く磁束が生じます。自己インダクタンス $L$ は、電流と鎖交磁束の比例定数として定義されます。

$$ \lambda = Li $$

ここで $\lambda$ は鎖交磁束(= 巻数 $\times$ 1ターンあたりの磁束)です。自己インダクタンス $L$ の単位はヘンリー [H] で、「1A の電流が 1Wb の鎖交磁束を生み出すとき 1H」です。

自己インダクタンスによる誘導起電力は次のようになります。

$$ v_L = L\frac{di}{dt} $$

これは「電流の変化を妨げる」という性質を定量化したものです。直流では $di/dt = 0$ なので電圧降下はゼロ、すなわちインダクタは直流には導線として振る舞います。一方、交流では周波数が高いほど大きなインピーダンスを示します。

相互インダクタンスの定義

さて、ここからが本題です。2つのコイル(コイル1とコイル2)が近くに配置されている状況を考えます。

コイル1に電流 $i_1$ を流すと、コイル1は磁束を発生させます。この磁束の一部がコイル2を貫きます。このとき、コイル2に鎖交する磁束 $\lambda_{21}$ は $i_1$ に比例し、その比例定数を相互インダクタンス $M_{21}$ と定義します。

$$ \lambda_{21} = M_{21} \, i_1 $$

同様に、コイル2に電流 $i_2$ を流したとき、コイル1に鎖交する磁束は次のように書けます。

$$ \lambda_{12} = M_{12} \, i_2 $$

ノイマンの公式から示せる重要な事実として、線形媒質中では次の相反関係が成り立ちます。

$$ M_{12} = M_{21} = M $$

つまり、コイル1からコイル2への磁気的結合の強さと、コイル2からコイル1への結合の強さは常に等しいのです。これは対称性から直感的にも理解できますが、証明はノイマンの公式の二重線積分が積分変数の交換で不変であることから得られます。

相互インダクタンス $M$ の単位もヘンリー [H] です。$M$ は常に正の値をとりますが、回路図でコイルの極性(ドット記号)を用いることで、結合の「向き」を指定します。ドットが同じ側にある端子に電流が流れ込むとき、互いの磁束が強め合います。

ドット記号と極性の約束

回路図では、結合インダクタの極性をドット記号(dot convention)で表します。2つのコイルそれぞれに1つずつドットが付けられ、次の約束に従います。

  • 両方のコイルでドット端子に電流が流れ込むとき、互いの磁束は強め合う
  • 一方がドット端子に流れ込み、他方がドット端子から流れ出すとき、磁束は弱め合う

この約束に基づいて、結合インダクタの端子方程式は次のように書けます。

$$ v_1 = L_1 \frac{di_1}{dt} + M \frac{di_2}{dt} $$

$$ v_2 = M \frac{di_1}{dt} + L_2 \frac{di_2}{dt} $$

ここでプラス符号は、両コイルの電流がともにドット端子に流れ込む場合を表しています。電流の向きがドットの約束と逆であれば、$M$ の前の符号はマイナスになります。

この連立方程式こそが結合インダクタの基本方程式であり、変圧器の理論はここから出発します。では、この結合の「度合い」をどのように数値化するかを見ていきましょう。

結合係数 $k$ — 磁気結合の度合い

結合係数の定義と直感

2つのコイルが「どれだけ密に結合しているか」を0から1のスケールで表す量が結合係数 $k$ です。

日常の例えで考えると、2人の人が伝言ゲームをしている状況に似ています。隣同士で話せばほぼ100%の情報が伝わりますが($k \approx 1$)、遠くから叫ぶと半分も伝わらないかもしれません($k \ll 1$)。結合係数は「コイル1が作る磁束のうち、どれだけの割合がコイル2に届くか」を定量化する指標です。

結合係数は次のように定義されます。

$$ k = \frac{M}{\sqrt{L_1 L_2}} $$

エネルギーの考察から、$k$ は次の範囲に制限されることが示されます。

$$ 0 \leq k \leq 1 $$

$k = 1$ のとき完全結合(perfect coupling)と呼び、コイル1が作る全ての磁束がコイル2を貫きます。$k = 0$ のとき結合はなく、2つのコイルは磁気的に独立です。

$k$ の物理的意味

結合係数の物理的な意味をもう少し掘り下げましょう。コイル1が生成する全磁束 $\Phi_1$ のうち、コイル2と鎖交する磁束を $\Phi_{12}$、コイル2に届かずに漏れる磁束を $\Phi_{l1}$ とすると、次の関係が成り立ちます。

$$ \Phi_1 = \Phi_{12} + \Phi_{l1} $$

同様にコイル2側からも考えると、

$$ \Phi_2 = \Phi_{21} + \Phi_{l2} $$

結合係数はこれらの漏洩磁束の割合で決まります。$k_1 = \Phi_{12}/\Phi_1$ をコイル1の結合率、$k_2 = \Phi_{21}/\Phi_2$ をコイル2の結合率とすると、

$$ k = \sqrt{k_1 k_2} $$

という関係が成り立ちます。

$k$ の上限の証明

なぜ $k \leq 1$ なのかを、エネルギーの観点から示しましょう。

結合インダクタに蓄えられる磁気エネルギーは次の通りです。

$$ W = \frac{1}{2}L_1 i_1^2 + M i_1 i_2 + \frac{1}{2}L_2 i_2^2 $$

磁気エネルギーは常に非負($W \geq 0$)でなければなりません。これは物理的に「エネルギーを蓄える」のであって「エネルギーを生み出す」ことはできないためです。

$W \geq 0$ が任意の $i_1, i_2$ に対して成り立つ条件を求めます。$W$ を $i_1$ の二次式と見なして平方完成すると、

$$ W = \frac{1}{2}L_1 \left(i_1 + \frac{M}{L_1}i_2\right)^2 + \frac{1}{2}\left(L_2 – \frac{M^2}{L_1}\right)i_2^2 $$

第1項は平方なので常に非負です。したがって $W \geq 0$ が任意の $i_2$ で成り立つためには、第2項の係数が非負である必要があります。

$$ L_2 – \frac{M^2}{L_1} \geq 0 $$

両辺に $L_1 > 0$ を掛けて整理すると、

$$ M^2 \leq L_1 L_2 $$

両辺の平方根をとると、

$$ M \leq \sqrt{L_1 L_2} $$

$k = M / \sqrt{L_1 L_2}$ の定義から、$k \leq 1$ が示されました。等号が成立するのは、漏洩磁束がゼロ、すなわち完全結合の場合です。

実際の結合係数の値

実際のデバイスでは、結合係数は構造によって大きく異なります。

デバイス 結合係数 $k$ 特徴
電力用鉄心変圧器 0.95 — 0.99 閉磁路の鉄心で漏洩磁束を最小化
高周波フェライトトランス 0.90 — 0.98 スイッチング電源に使用
空芯コイル(密結合) 0.5 — 0.9 RF回路の結合コイル
空芯コイル(疎結合) 0.01 — 0.3 ワイヤレス給電、NFC
PCBトレースコイル 0.05 — 0.6 集積回路内のインダクタ

電力用変圧器が $k \approx 0.99$ を達成できるのは、鉄やケイ素鋼の鉄心が磁気抵抗の低い磁路を形成し、磁束のほとんどが鉄心の中を通るため漏洩がほとんどないからです。一方、空芯コイルでは磁束が空間に広がるため、結合係数は低くなります。

結合係数の概念を理解したところで、次はいよいよ変圧器の動作を理論的に記述していきましょう。まず理想的な場合から始め、段階的に現実の効果を取り入れていきます。

変圧器の基本動作

変圧器の構造

変圧器は、共通の磁気回路(磁心)の上に巻かれた2つ(またはそれ以上)のコイルで構成されます。電源側のコイルを一次コイル(primary winding, 巻数 $N_1$)、負荷側のコイルを二次コイル(secondary winding, 巻数 $N_2$)と呼びます。

一次コイルに交流電圧を印加すると、一次コイルに電流が流れて磁心の中に磁束が生じます。この磁束は磁心を通って二次コイルも貫くため、ファラデーの法則により二次コイルに起電力が誘導されます。

重要なのは、変圧器は直流では動作しないという点です。ファラデーの法則は $d\Phi/dt$ に比例する起電力を誘導するため、磁束が時間的に変化しない直流では二次側に起電力が生じません。変圧器は本質的に交流素子です。

一次側と二次側の電圧関係

磁心の磁束を $\Phi(t)$ とし、漏洩磁束をまず無視すると($k = 1$)、一次コイルと二次コイルに誘導される起電力はそれぞれ次のようになります。

$$ v_1 = N_1 \frac{d\Phi}{dt} $$

$$ v_2 = N_2 \frac{d\Phi}{dt} $$

2つの式から $d\Phi/dt$ を消去すると、電圧比が得られます。

$$ \frac{v_2}{v_1} = \frac{N_2}{N_1} $$

この関係は変圧器の最も基本的な性質です。$N_2 > N_1$ なら昇圧(step-up)、$N_2 < N_1$ なら降圧(step-down)となります。

巻数比の定義

巻数比(turns ratio)$n$ は次のように定義されます。

$$ n = \frac{N_1}{N_2} $$

この定義では $n$ は一次対二次の比です(教科書によっては逆に定義する場合もあるため注意が必要です)。この定義を用いると、電圧の関係は次のように書けます。

$$ v_2 = \frac{v_1}{n} $$

$n > 1$ のとき降圧、$n < 1$ のとき昇圧です。

変圧器が電圧を変えることは理解できました。では、エネルギーはどうなるのでしょうか? 電圧が上がった分だけ電流は減るのか、それとも「ただ乗り」でエネルギーが増えるのか。この問いに答えるのが、次に述べる理想変圧器モデルです。

理想変圧器モデル

理想変圧器の3つの仮定

理想変圧器(ideal transformer)とは、以下の3つの仮定を満たす変圧器モデルです。

  1. 完全結合: $k = 1$(漏洩磁束がゼロ)
  2. 無限大の自己インダクタンス: $L_1 \to \infty$, $L_2 \to \infty$(比 $L_1/L_2 = n^2$ は有限に保つ)
  3. 損失ゼロ: コイルの巻線抵抗と磁心の損失がともにゼロ

これらの仮定は現実には達成できませんが、良質な電力用変圧器はこれに非常に近い動作をします。まず理想モデルで本質を掴み、その後で現実の効果を一つずつ加えていくのが効率的な学び方です。

電圧比 = 巻数比

理想変圧器では、一次・二次の電圧比は厳密に巻数比に等しくなります。

$$ \frac{v_1}{v_2} = \frac{N_1}{N_2} = n $$

これは前節で漏洩磁束を無視して導いた関係と同じですが、理想変圧器では厳密に成立します。

電力保存と電流比

理想変圧器では損失がゼロなので、一次側に入力される瞬時電力と二次側から出力される瞬時電力が常に等しくなります。

$$ p_1 = v_1 i_1 = v_2 i_2 = p_2 $$

$v_1 = n v_2$ を代入すると、

$$ n v_2 \cdot i_1 = v_2 \cdot i_2 $$

両辺を $v_2$ で割ると、電流比が得られます。

$$ \frac{i_1}{i_2} = \frac{1}{n} = \frac{N_2}{N_1} $$

つまり、電圧が $n$ 倍になれば電流は $1/n$ 倍になるのです。これは「エネルギーは無から生まれない」というエネルギー保存則の直接的な帰結です。昇圧すれば電流は減り、降圧すれば電流は増えます。

具体例で確認しましょう。家庭用のACアダプタが100Vを5Vに降圧する場合、巻数比は $n = 100/5 = 20$ です。二次側で2Aの電流が必要なら、一次側の電流は $2/20 = 0.1$ Aとなり、入力電力 $100 \times 0.1 = 10$ W = 出力電力 $5 \times 2 = 10$ W が確認できます。

フェーザ表現

交流定常状態では、理想変圧器の関係をフェーザで書くと次のようになります。

$$ \frac{\tilde{V}_1}{\tilde{V}_2} = n, \quad \frac{\tilde{I}_1}{\tilde{I}_2} = \frac{1}{n} $$

フェーザ表現では、電圧と電流の振幅比だけでなく位相関係も表されます。理想変圧器では電圧の位相シフトはゼロ(または $180°$、ドットの向きに依存)です。

理想変圧器が電圧と電流をそれぞれ巻数比に応じて変換することがわかりました。では、負荷インピーダンスは一次側からどのように「見える」のでしょうか? これが変圧器の実用上きわめて重要なインピーダンス変換の機能です。

理想変圧器のインピーダンス変換

インピーダンス変換の直感

なぜインピーダンス変換が重要なのでしょうか。増幅回路の出力インピーダンスが高く、スピーカーのインピーダンスが低いとき、直結すると電力がほとんど伝わりません。ちょうど、太い水道管と細い水道管を直結すると水がうまく流れないのと似ています。変圧器は、二次側のインピーダンスを「見かけ上」変換して、一次側から見ると別のインピーダンスに見せることができます。これがインピーダンスマッチングへの応用です。

インピーダンス変換の導出

二次側に負荷インピーダンス $Z_L$ が接続されているとします。二次側ではオームの法則より、

$$ \tilde{V}_2 = Z_L \tilde{I}_2 $$

一次側から見た入力インピーダンス $Z_{\text{in}}$ を求めます。定義より、

$$ Z_{\text{in}} = \frac{\tilde{V}_1}{\tilde{I}_1} $$

理想変圧器の関係式 $\tilde{V}_1 = n \tilde{V}_2$ と $\tilde{I}_1 = \tilde{I}_2 / n$ を代入します。

$$ Z_{\text{in}} = \frac{n \tilde{V}_2}{\tilde{I}_2 / n} = n^2 \frac{\tilde{V}_2}{\tilde{I}_2} = n^2 Z_L $$

この結果をまとめると、

$$ \boxed{Z_{\text{in}} = n^2 Z_L} $$

一次側から見た入力インピーダンスは、二次側の負荷インピーダンスの $n^2$ 倍です。巻数比 $n$ は一次対二次の比なので、$n > 1$(降圧変圧器)なら負荷インピーダンスは大きく見え、$n < 1$(昇圧変圧器)なら小さく見えます。

インピーダンス変換の具体例

オーディオアンプの出力インピーダンスが600 $\Omega$ で、スピーカーのインピーダンスが8 $\Omega$ の場合を考えます。最大電力伝送のためにはインピーダンスを整合させたいので、一次側から見て $Z_{\text{in}} = 600 \, \Omega$ となるようにしたいです。

$$ n^2 = \frac{Z_{\text{in}}}{Z_L} = \frac{600}{8} = 75 $$

$$ n = \sqrt{75} \approx 8.66 $$

したがって、巻数比 $n \approx 8.66 : 1$ の変圧器を使えば、8 $\Omega$ のスピーカーが一次側からは 600 $\Omega$ に見え、インピーダンスマッチングが実現できます。

$Z_L$ が複素インピーダンスの場合

$Z_L$ が純抵抗でなく複素インピーダンスの場合でも、同じ変換則が成り立ちます。

$$ Z_{\text{in}} = n^2 (R_L + jX_L) = n^2 R_L + j n^2 X_L $$

つまり、抵抗成分もリアクタンス成分もそれぞれ $n^2$ 倍に変換されます。インピーダンスの大きさは $n^2$ 倍、位相角は不変です。

インピーダンス変換の理論を理解したところで、次は現実の変圧器をより正確に表現する等価回路を構築していきます。理想変圧器モデルでは無視していた漏洩磁束や磁心の有限透磁率の効果を取り入れます。

T型等価回路 — 現実の変圧器のモデル化

なぜ等価回路が必要か

現実の変圧器には、理想変圧器モデルでは考慮しなかった多くの効果があります。漏洩磁束によるインダクタンス、磁心の有限透磁率、巻線の抵抗、鉄損などです。これらを体系的に扱うために、変圧器を等価回路(equivalent circuit)で表します。

等価回路を用いると、変圧器を通常の回路素子の組み合わせとして扱えるため、キルヒホッフの法則やインピーダンスの計算をそのまま適用できます。変圧器を含む回路の解析が、標準的な回路解析の手法で行えるようになるのです。

漏洩インダクタンス

まず、漏洩磁束の効果から見ていきましょう。

前述の通り、コイル1が作る磁束のすべてがコイル2に到達するわけではありません。コイル2に届かず空間に漏れる磁束を漏洩磁束(leakage flux)と呼びます。漏洩磁束もコイル自身と鎖交するため、自己インダクタンスに寄与しますが、相互インダクタンスには寄与しません。

一次コイルの自己インダクタンス $L_1$ は次のように分解できます。

$$ L_1 = L_{l1} + L_{m1} $$

ここで $L_{l1}$ は一次側の漏洩インダクタンス(leakage inductance)、$L_{m1}$ は共通磁束に対応する成分です。同様に二次側も、

$$ L_2 = L_{l2} + L_{m2} $$

と分解されます。

励磁インダクタンス

磁心を通る共通磁束を作るためには、一次側に電流が必要です。この電流を励磁電流(magnetizing current)$i_m$ と呼び、対応するインダクタンスを励磁インダクタンス(magnetizing inductance)$L_m$ と呼びます。

理想変圧器では $L_m \to \infty$ と仮定しましたが、現実の磁心は有限の透磁率を持つため、$L_m$ は有限の値になります。$L_m$ が有限であることは、二次側を開放しても一次側に有限の電流(励磁電流)が流れることを意味します。

T型等価回路の構成

以上の要素を組み合わせると、変圧器のT型等価回路(T-equivalent circuit)が得られます。一次側に換算した等価回路は以下の構成です。

  1. 一次巻線抵抗 $R_1$: 一次コイルの直流抵抗
  2. 一次漏洩インダクタンス $L_{l1}$: 一次コイルの漏洩磁束による
  3. 励磁ブランチ: 並列に接続された $L_m$(励磁インダクタンス)と $R_c$(鉄損抵抗)
  4. 二次漏洩インダクタンス(一次換算) $n^2 L_{l2}$: 二次側の漏洩インダクタンスを一次側に換算
  5. 二次巻線抵抗(一次換算) $n^2 R_2$: 二次側の直流抵抗を一次側に換算
  6. 理想変圧器: 巻数比 $n:1$(等価回路の最後段)

回路をキルヒホッフの法則で記述すると、一次側のループ方程式は次のようになります。

$$ \tilde{V}_1 = (R_1 + j\omega L_{l1})\tilde{I}_1 + \tilde{V}_m $$

ここで $\tilde{V}_m$ は励磁ブランチの電圧(= 理想変圧器の一次側電圧)です。

一次側換算の等価回路

実用上は理想変圧器の部分を除去して、全ての量を一次側に換算した等価回路がよく使われます。二次側の電圧・電流・インピーダンスは次のように一次側に換算されます。

$$ \tilde{V}_2′ = n \tilde{V}_2, \quad \tilde{I}_2′ = \frac{\tilde{I}_2}{n}, \quad Z_2′ = n^2 Z_2 $$

一次側に完全に換算した等価回路では、理想変圧器が消えて単純な回路になります。直列に $R_1$, $j\omega L_{l1}$, $j\omega n^2 L_{l2}$, $n^2 R_2$ が並び、途中から $L_m$ と $R_c$ の並列回路が分岐するT字型の構造です。これがT型等価回路の名前の由来です。

簡略等価回路

多くの実用的な計算では、励磁ブランチの電流が負荷電流に比べて十分に小さいため、励磁ブランチを入力端子側に移動させた簡略等価回路(approximate equivalent circuit)が使われます。

この近似では、一次側と二次側の漏洩インダクタンスと抵抗をまとめて、次のように等価直列インピーダンスとして扱います。

$$ R_{eq} = R_1 + n^2 R_2 $$

同様に、漏洩インダクタンスも一次側と二次側の換算値を合算します。

$$ L_{eq} = L_{l1} + n^2 L_{l2} $$

これらを直列インピーダンスとしてまとめると、次のように表せます。

$$ Z_{eq} = R_{eq} + j\omega L_{eq} $$

これにより、変圧器は「等価直列インピーダンス $Z_{eq}$」と「並列の励磁ブランチ」と「理想変圧器」の3要素で簡潔に表されます。

等価回路による変圧器のモデル化ができたところで、次に変圧器で発生する各種の損失について詳しく見ていきましょう。

変圧器の損失 — 銅損と鉄損

損失の分類

理想変圧器の効率は100%ですが、現実の変圧器にはいくつかの損失メカニズムが存在します。変圧器の損失は大きく銅損鉄損に分類されます。

損失の種類 物理的原因 依存するパラメータ 等価回路での表現
銅損(巻線損) 巻線の電気抵抗 電流の二乗 $R_1$, $R_2$
ヒステリシス損 磁心の磁化曲線のヒステリシス 周波数、磁束密度 $R_c$
渦電流損 磁心内の誘導電流 周波数の二乗、磁束密度 $R_c$

銅損

銅損(copper loss)は、巻線の電気抵抗によるジュール発熱です。一次側の銅損 $P_{cu1}$ と二次側の銅損 $P_{cu2}$ はそれぞれ、

$$ P_{cu1} = I_1^2 R_1, \quad P_{cu2} = I_2^2 R_2 $$

全銅損は一次側に換算すると、

$$ P_{cu} = I_1^2 R_1 + I_2^2 R_2 = I_1^2 (R_1 + n^2 R_2) = I_1^2 R_{eq} $$

銅損は電流の二乗に比例するため、負荷電流に強く依存します。無負荷時はほとんどゼロですが、定格負荷時に最大となります。銅損を低減するには、巻線の断面積を大きくする(太い線を使う)か、巻線を短くする設計が有効です。

鉄損(ヒステリシス損と渦電流損)

鉄損(iron loss / core loss)は磁心で発生する損失で、ヒステリシス損と渦電流損の2つからなります。

ヒステリシス損は、磁心材料の磁化を繰り返し反転させるときに消費されるエネルギーです。磁化曲線(B-Hカーブ)がヒステリシスループを描くことに起因し、1サイクルあたりの損失はループの面積に比例します。

$$ P_h = k_h f B_m^{\alpha} $$

ここで $f$ は周波数、$B_m$ は最大磁束密度、$k_h$ は材料定数、$\alpha$ はスタインメッツ指数(通常 1.6 — 2.0)です。

渦電流損は、磁心内部に誘導される渦電流(ファラデーの法則による)がジュール熱として散逸するものです。

$$ P_e = k_e f^2 B_m^2 t^2 $$

ここで $t$ は磁心の板厚(積層鋼板の場合)、$k_e$ は材料定数です。渦電流損は周波数の二乗に比例するため、高周波では支配的になります。渦電流損を抑えるために、電力用変圧器の鉄心は薄い鋼板を絶縁して積層する構造になっています。

鉄損は電圧(磁束密度)に依存し、負荷電流にはほとんど依存しません。つまり、鉄損は無負荷時にも発生します。等価回路では、鉄損を $R_c$(鉄損抵抗、コアロス抵抗)として励磁ブランチに並列に入れて表現します。

変圧器の効率

変圧器の効率 $\eta$ は次のように定義されます。

$$ \eta = \frac{P_{\text{out}}}{P_{\text{in}}} = \frac{P_{\text{out}}}{P_{\text{out}} + P_{cu} + P_{\text{core}}} $$

一般に大型電力用変圧器の効率は95%〜99%以上と非常に高く、これは変圧器が「動く部品のない」静的な機器であるためです。最大効率は銅損と鉄損が等しくなる負荷条件で達成されます。

$$ P_{cu} = P_{\text{core}} \quad \text{のとき} \quad \eta = \eta_{\max} $$

損失の理論を理解したところで、次は変圧器の高周波応用であるバランについて見ていきましょう。

高周波変圧器とバラン

高周波トランスの課題

変圧器を高い周波数で使用する場合、いくつかの追加的な課題が生じます。

最大の問題は鉄損の増大です。渦電流損は $f^2$ に比例するため、周波数が上がると急速に増加します。このため、高周波変圧器では鉄心材料を工夫する必要があります。

周波数帯 典型的な磁心材料 特徴
50/60 Hz ケイ素鋼板(積層) 高飽和磁束密度、安価
kHz帯 フェライト(MnZn, NiZn) 低渦電流損、中程度の飽和磁束密度
MHz帯 NiZnフェライト、空芯 超低損失、低飽和磁束密度
GHz帯 空芯、伝送線路型 磁心なし

スイッチング電源では動作周波数を数十kHz〜数百kHzに上げることで、変圧器を小型化しています。これは、磁心に蓄えるべきエネルギーが周波数に反比例するため、高周波ほど小さな磁心で済むからです。

巻線間容量と寄生効果

高周波では、巻線間の寄生容量(interwinding capacitance)が無視できなくなります。一次巻線と二次巻線の間、また巻線の隣接ターン間に分布する容量が共振を引き起こし、変圧器の周波数特性に影響を与えます。

これらの寄生容量を $C_p$(一次側寄生容量)として等価回路に追加すると、漏洩インダクタンスとの間に共振が生じます。この自己共振周波数は、

$$ f_r = \frac{1}{2\pi\sqrt{L_{eq} C_p}} $$

で与えられ、$f_r$ を超える周波数では変圧器としての機能が失われます。

バラン(balun)

バラン(balun)は「balanced-unbalanced」の略で、平衡信号と不平衡信号を相互に変換するための変圧器です。

不平衡(アンバランス)回路とは、一方の導体がグランドに接続された回路(同軸ケーブルなど)です。平衡(バランス)回路とは、2つの導体がグランドに対して対称的な信号を運ぶ回路(ダイポールアンテナの給電点など)です。

同軸ケーブル(不平衡)でダイポールアンテナ(平衡)に給電するとき、バランなしでは不平衡電流が同軸ケーブルの外導体外面に流れ、放射パターンが乱れます。バランを挿入することで、この問題を解消できます。

1:1 のバランは電圧比を変えずに平衡/不平衡変換のみを行います。インピーダンス変換も同時に行いたい場合は、巻数比を1:1以外に設定します。例えば 4:1 のバラン(巻数比 2:1)は、200 $\Omega$ の平衡負荷を 50 $\Omega$ の不平衡回路に接続するのに使われます。

$$ Z_{\text{in}} = \frac{Z_L}{n^2} = \frac{200}{4} = 50 \, \Omega $$

ここまでで変圧器の理論を一通り学びました。次に、Pythonを使って変圧器の等価回路シミュレーションを実装し、理論を数値的に確認しましょう。

Pythonでの等価回路シミュレーション

シミュレーションの目的

ここでは、変圧器のT型等価回路(一次側換算)をPythonで実装し、以下を確認します。

  1. 周波数に対する電圧利得と位相の変化(ボード線図)
  2. 負荷変動に対する電圧変動率
  3. 理想変圧器との比較

等価回路のパラメータとして、典型的な小型電源トランス(定格 50VA, 100V/10V)を想定します。

等価回路パラメータの設定と周波数特性

まず、等価回路のパラメータを定義し、周波数特性(ボード線図)を計算・可視化します。

import numpy as np
import matplotlib.pyplot as plt

# === 変圧器の等価回路パラメータ(一次側換算) ===
# 小型電源トランス: 100V → 10V, 50VA, 50Hz
n = 10.0          # 巻数比 N1/N2
R1 = 2.0          # 一次巻線抵抗 [Ω]
R2 = 0.02         # 二次巻線抵抗 [Ω](一次換算前)
Ll1 = 5e-3        # 一次漏洩インダクタンス [H]
Ll2 = 5e-5        # 二次漏洩インダクタンス [H](一次換算前)
Lm = 5.0          # 励磁インダクタンス [H]
Rc = 50000.0      # 鉄損抵抗 [Ω]
RL = 20.0         # 二次側負荷抵抗 [Ω]

# 一次側換算
R2_ref = n**2 * R2          # 二次巻線抵抗(一次換算)
Ll2_ref = n**2 * Ll2        # 二次漏洩インダクタンス(一次換算)
RL_ref = n**2 * RL          # 負荷抵抗(一次換算)

print(f"二次巻線抵抗(一次換算): R2' = {R2_ref:.1f} Ω")
print(f"二次漏洩インダクタンス(一次換算): Ll2' = {Ll2_ref*1e3:.1f} mH")
print(f"負荷抵抗(一次換算): RL' = {RL_ref:.0f} Ω")

# === 周波数特性の計算 ===
freq = np.logspace(-1, 6, 2000)  # 0.1 Hz ~ 1 MHz
omega = 2 * np.pi * freq

# 各素子のインピーダンス
Z_R1 = R1
Z_Ll1 = 1j * omega * Ll1
Z_Ll2_ref = 1j * omega * Ll2_ref
Z_R2_ref = R2_ref
Z_Lm = 1j * omega * Lm
Z_Rc = Rc
Z_RL_ref = RL_ref

# 励磁ブランチ: Lm // Rc
Z_mag = (Z_Lm * Z_Rc) / (Z_Lm + Z_Rc)

# 二次側直列インピーダンス(一次換算)+ 負荷
Z_sec = Z_Ll2_ref + Z_R2_ref + Z_RL_ref

# 励磁ブランチと二次側の並列
Z_parallel = (Z_mag * Z_sec) / (Z_mag + Z_sec)

# 全体の入力インピーダンス
Z_total = Z_R1 + Z_Ll1 + Z_parallel

# 負荷にかかる電圧(一次換算)/ 入力電圧
# V_RL_ref = V1 * Z_parallel / Z_total * Z_RL_ref / Z_sec
V_ratio_ref = (Z_parallel / Z_total) * (Z_RL_ref / Z_sec)

# 二次側実際の電圧比: V2/V1 = V_RL_ref/(n * V1) / V1...
# 正確には V2 = V_RL_ref / n なので
V_gain = V_ratio_ref / n

# 理想変圧器のゲイン
V_gain_ideal = 1.0 / n

# 電圧利得の大きさ(dB)
gain_dB = 20 * np.log10(np.abs(V_gain))
gain_ideal_dB = 20 * np.log10(V_gain_ideal)

# 位相 [deg]
phase_deg = np.angle(V_gain, deg=True)

# === ボード線図の描画 ===
fig, (ax1, ax2) = plt.subplots(2, 1, figsize=(10, 8), sharex=True)

# ゲイン
ax1.semilogx(freq, gain_dB, 'cyan', linewidth=2, label='Real transformer')
ax1.axhline(y=gain_ideal_dB, color='orange', linestyle='--',
            linewidth=1.5, label=f'Ideal (1/n = 1/{int(n)})')
ax1.set_ylabel('Voltage Gain [dB]')
ax1.set_title('Transformer Frequency Response (Bode Plot)')
ax1.legend()
ax1.grid(True, which='both', alpha=0.3)
ax1.set_ylim([gain_ideal_dB - 30, gain_ideal_dB + 5])

# 位相
ax2.semilogx(freq, phase_deg, 'cyan', linewidth=2)
ax2.set_xlabel('Frequency [Hz]')
ax2.set_ylabel('Phase [deg]')
ax2.grid(True, which='both', alpha=0.3)
ax2.set_ylim([-90, 90])

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

このコードを実行すると、変圧器の周波数特性がボード線図として描画されます。上段がゲイン(dB)、下段が位相(度)です。

グラフから以下の特徴が読み取れます。

  1. 低周波側のロールオフ: 数Hz以下では電圧利得が急激に低下しています。これは励磁インダクタンス $L_m$ のインピーダンス $j\omega L_m$ が低周波では小さくなり、励磁電流が増大して負荷に電力が伝わりにくくなるためです。つまり、変圧器は低周波(特に直流)では動作しないという性質が周波数特性にはっきり現れています。
  2. 帯域内のフラットな特性: 50Hz付近(定格動作周波数)では、ゲインがほぼ理想変圧器の値($-20$ dB = $1/10$)に一致しています。設計通りの動作です。ただし、巻線抵抗による電圧降下のため、厳密には理想値よりわずかに低くなっています。
  3. 高周波側のロールオフ: 数十kHz以上では漏洩インダクタンスのインピーダンスが大きくなり、ゲインが低下します。実際の変圧器ではさらに巻線間容量による共振ピークが現れますが、ここでは容量を含めていないため単調な減衰となっています。

負荷変動に対する電圧変動率

次に、負荷を変化させたときの二次側電圧の変動を調べます。

import numpy as np
import matplotlib.pyplot as plt

# === 変圧器パラメータ(前と同じ) ===
n = 10.0
R1 = 2.0
R2 = 0.02
Ll1 = 5e-3
Ll2 = 5e-5
Lm = 5.0
Rc = 50000.0
f0 = 50.0  # 動作周波数 [Hz]
omega0 = 2 * np.pi * f0
V1 = 100.0  # 一次側電圧 [Vrms]

# 一次換算
R2_ref = n**2 * R2
Ll2_ref = n**2 * Ll2

# 負荷電流を変化させる(二次側)
I2_range = np.linspace(0, 5.0, 200)  # 0 ~ 5A(定格=50VA/10V=5A)

V2_list = []
V2_ideal_list = []

for I2 in I2_range:
    if I2 < 1e-12:
        # 無負荷時
        RL = 1e12  # ほぼ開放
    else:
        RL = (V1 / n) / I2  # 近似的な負荷抵抗

    RL_ref = n**2 * RL

    # 各インピーダンス
    Z_Ll1 = 1j * omega0 * Ll1
    Z_Ll2_ref = 1j * omega0 * Ll2_ref
    Z_Lm = 1j * omega0 * Lm

    Z_mag = (Z_Lm * Rc) / (Z_Lm + Rc)
    Z_sec = Z_Ll2_ref + R2_ref + RL_ref
    Z_parallel = (Z_mag * Z_sec) / (Z_mag + Z_sec)
    Z_total = R1 + Z_Ll1 + Z_parallel

    # 一次電流
    I1 = V1 / Z_total

    # 負荷電圧(一次換算)
    V_RL_ref = I1 * Z_parallel * RL_ref / Z_sec

    # 二次側電圧
    V2 = np.abs(V_RL_ref) / n
    V2_list.append(V2)
    V2_ideal_list.append(V1 / n)

V2_arr = np.array(V2_list)
V2_ideal_arr = np.array(V2_ideal_list)

# 電圧変動率
V2_no_load = V2_arr[0]
regulation = (V2_no_load - V2_arr) / V2_no_load * 100

# === 描画 ===
fig, (ax1, ax2) = plt.subplots(2, 1, figsize=(10, 8))

# 二次側電圧 vs 負荷電流
ax1.plot(I2_range, V2_arr, 'cyan', linewidth=2, label='Real transformer')
ax1.axhline(y=V1/n, color='orange', linestyle='--', linewidth=1.5,
            label=f'Ideal (V1/n = {V1/n:.0f} V)')
ax1.set_xlabel('Load Current I₂ [A]')
ax1.set_ylabel('Secondary Voltage V₂ [V]')
ax1.set_title('Voltage Regulation Characteristic')
ax1.legend()
ax1.grid(True, alpha=0.3)

# 電圧変動率 vs 負荷電流
ax2.plot(I2_range, regulation, 'cyan', linewidth=2)
ax2.set_xlabel('Load Current I₂ [A]')
ax2.set_ylabel('Voltage Regulation [%]')
ax2.set_title('Voltage Regulation vs Load Current')
ax2.grid(True, alpha=0.3)

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

print(f"無負荷時二次電圧: {V2_no_load:.3f} V")
print(f"定格負荷時二次電圧: {V2_arr[-1]:.3f} V")
print(f"定格負荷時の電圧変動率: {regulation[-1]:.2f} %")

上のグラフから、以下のことがわかります。

  1. 上段の電圧-電流特性: 負荷電流が増えるにつれて二次側電圧が低下しています。これは巻線抵抗と漏洩インダクタンスによる電圧降下が原因です。理想変圧器(オレンジ破線)では電流によらず電圧は一定ですが、現実の変圧器ではドループ特性を示します。
  2. 下段の電圧変動率: 電圧変動率は負荷電流にほぼ比例して増加しています。これは直列インピーダンス($R_{eq} + j\omega L_{eq}$)の電圧降下が電流に比例するためです。設計において、低い電圧変動率が要求される場合は巻線抵抗を小さくする必要があります。

効率の計算と最適負荷点

最後に、変圧器の効率を負荷に対してプロットし、銅損と鉄損が等しくなる点で効率が最大になることを確認します。

import numpy as np
import matplotlib.pyplot as plt

# === 変圧器パラメータ ===
n = 10.0
R1 = 2.0
R2 = 0.02
Ll1 = 5e-3
Ll2 = 5e-5
Lm = 5.0
Rc = 50000.0
f0 = 50.0
omega0 = 2 * np.pi * f0
V1 = 100.0

R2_ref = n**2 * R2
Ll2_ref = n**2 * Ll2
R_eq = R1 + R2_ref

# 負荷電流の範囲
I2_range = np.linspace(0.01, 5.0, 500)

efficiency = []
P_copper = []
P_core = []

for I2 in I2_range:
    RL = (V1 / n) / I2
    RL_ref = n**2 * RL

    Z_Ll1 = 1j * omega0 * Ll1
    Z_Ll2_ref = 1j * omega0 * Ll2_ref
    Z_Lm = 1j * omega0 * Lm

    Z_mag = (Z_Lm * Rc) / (Z_Lm + Rc)
    Z_sec = Z_Ll2_ref + R2_ref + RL_ref
    Z_parallel = (Z_mag * Z_sec) / (Z_mag + Z_sec)
    Z_total = R1 + Z_Ll1 + Z_parallel

    I1 = V1 / Z_total
    I1_abs = np.abs(I1)

    # 励磁ブランチの電圧
    V_mag = I1 * Z_parallel

    # 鉄損(コアロス)
    P_c = np.abs(V_mag)**2 / Rc

    # 銅損
    P_cu = I1_abs**2 * R1 + I2**2 * R2

    # 出力電力
    P_out = I2**2 * RL

    # 入力電力
    P_in = P_out + P_cu + P_c

    eta = P_out / P_in * 100

    efficiency.append(eta)
    P_copper.append(P_cu)
    P_core.append(P_c)

efficiency = np.array(efficiency)
P_copper = np.array(P_copper)
P_core = np.array(P_core)

# 最大効率の点
idx_max = np.argmax(efficiency)
I2_max_eff = I2_range[idx_max]

# === 描画 ===
fig, (ax1, ax2) = plt.subplots(2, 1, figsize=(10, 8))

# 効率
ax1.plot(I2_range, efficiency, 'cyan', linewidth=2)
ax1.axvline(x=I2_max_eff, color='orange', linestyle='--', linewidth=1.5,
            label=f'Max efficiency at I₂ = {I2_max_eff:.2f} A')
ax1.set_xlabel('Load Current I₂ [A]')
ax1.set_ylabel('Efficiency [%]')
ax1.set_title('Transformer Efficiency vs Load Current')
ax1.legend()
ax1.grid(True, alpha=0.3)

# 銅損と鉄損
ax2.plot(I2_range, P_copper, 'cyan', linewidth=2, label='Copper loss')
ax2.plot(I2_range, P_core, 'orange', linewidth=2, label='Core loss')
ax2.axvline(x=I2_max_eff, color='gray', linestyle=':', linewidth=1)
ax2.set_xlabel('Load Current I₂ [A]')
ax2.set_ylabel('Loss [W]')
ax2.set_title('Copper Loss vs Core Loss')
ax2.legend()
ax2.grid(True, alpha=0.3)

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

print(f"最大効率: {efficiency[idx_max]:.2f} % (I2 = {I2_max_eff:.2f} A)")
print(f"最大効率時の銅損: {P_copper[idx_max]:.3f} W")
print(f"最大効率時の鉄損: {P_core[idx_max]:.3f} W")

このグラフから、変圧器の効率に関する重要な知見が得られます。

  1. 効率のピーク: 効率は負荷電流がゼロ付近では低く(鉄損に対して出力電力が小さいため)、負荷が増えるにつれて上昇し、ある負荷電流で最大値に達した後、再び低下します(銅損が支配的になるため)。このベル型のカーブは変圧器に特徴的です。
  2. 銅損 = 鉄損の条件: 下段のグラフを見ると、効率が最大となる負荷電流(グレー破線)の付近で、銅損(シアン線)と鉄損(オレンジ線)がほぼ等しくなっていることが確認できます。これは理論的に証明できる結果であり、全損失 $P_{cu} + P_{\text{core}}$ を負荷電流で微分してゼロとおくと、$P_{cu} = P_{\text{core}}$ という条件が得られます。
  3. 設計への示唆: 変圧器を設計する際は、最も頻繁に使用される負荷条件において銅損と鉄損が等しくなるように設計すると、効率が最大化されます。常にフル負荷で使う変圧器と、軽負荷が多い変圧器では、最適な鉄心サイズと巻線太さのバランスが異なります。

寄生容量を含む高周波等価回路

最後に、巻線間寄生容量を含めた場合の高周波特性を確認しましょう。寄生容量によって自己共振周波数が現れ、変圧器の使用可能帯域が制限される様子を可視化します。

import numpy as np
import matplotlib.pyplot as plt

# === パラメータ ===
n = 10.0
R1 = 2.0
R2_ref = 2.0      # n^2 * R2
Ll1 = 5e-3
Ll2_ref = 5e-3     # n^2 * Ll2
Lm = 5.0
Rc = 50000.0
RL_ref = 2000.0    # n^2 * RL
Cp = 500e-12       # 寄生容量 [F](一次側換算)

freq = np.logspace(0, 7, 3000)  # 1 Hz ~ 10 MHz
omega = 2 * np.pi * freq

# 漏洩インダクタンスの合計
L_leak = Ll1 + Ll2_ref

# 自己共振周波数(理論値)
f_res = 1 / (2 * np.pi * np.sqrt(L_leak * Cp))
print(f"自己共振周波数(理論値): {f_res/1e3:.1f} kHz")

# === 寄生容量なしの場合 ===
Z_Lm_arr = 1j * omega * Lm
Z_mag = (Z_Lm_arr * Rc) / (Z_Lm_arr + Rc)
Z_sec_no_Cp = 1j * omega * Ll2_ref + R2_ref + RL_ref
Z_par_no_Cp = (Z_mag * Z_sec_no_Cp) / (Z_mag + Z_sec_no_Cp)
Z_tot_no_Cp = R1 + 1j * omega * Ll1 + Z_par_no_Cp
V_ratio_no_Cp = (Z_par_no_Cp / Z_tot_no_Cp) * (RL_ref / Z_sec_no_Cp)
gain_no_Cp = V_ratio_no_Cp / n

# === 寄生容量ありの場合 ===
# 寄生容量を負荷と並列に配置する簡略モデル
Z_Cp = 1 / (1j * omega * Cp)
Z_load_with_Cp = (RL_ref * Z_Cp) / (RL_ref + Z_Cp)
Z_sec_Cp = 1j * omega * Ll2_ref + R2_ref + Z_load_with_Cp
Z_par_Cp = (Z_mag * Z_sec_Cp) / (Z_mag + Z_sec_Cp)
Z_tot_Cp = R1 + 1j * omega * Ll1 + Z_par_Cp
V_ratio_Cp = (Z_par_Cp / Z_tot_Cp) * (Z_load_with_Cp / Z_sec_Cp)
gain_Cp = V_ratio_Cp / n

# ゲインをdBに変換
gain_dB_no_Cp = 20 * np.log10(np.abs(gain_no_Cp))
gain_dB_Cp = 20 * np.log10(np.abs(gain_Cp))

# === 描画 ===
fig, ax = plt.subplots(figsize=(10, 6))

ax.semilogx(freq, gain_dB_no_Cp, 'gray', linewidth=1.5,
            linestyle='--', label='Without parasitic C', alpha=0.7)
ax.semilogx(freq, gain_dB_Cp, 'cyan', linewidth=2,
            label='With parasitic C')
ax.axvline(x=f_res, color='orange', linestyle=':', linewidth=1.5,
           label=f'Self-resonance ≈ {f_res/1e3:.0f} kHz')

ideal_gain_dB = 20 * np.log10(1/n)
ax.axhline(y=ideal_gain_dB, color='orange', linestyle='--',
           linewidth=1, alpha=0.5, label='Ideal gain')

ax.set_xlabel('Frequency [Hz]')
ax.set_ylabel('Voltage Gain [dB]')
ax.set_title('Effect of Parasitic Capacitance on Frequency Response')
ax.legend()
ax.grid(True, which='both', alpha=0.3)
ax.set_ylim([ideal_gain_dB - 40, ideal_gain_dB + 20])

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

このグラフから、寄生容量が変圧器の高周波特性に与える影響が明確に見えます。

  1. 共振ピーク: 寄生容量がある場合(シアン線)、自己共振周波数付近でゲインにピークが現れています。これは漏洩インダクタンスと寄生容量がLC共振を起こしているためです。共振周波数を超えると、ゲインは急激に低下します。
  2. 使用可能帯域の制限: 寄生容量がない場合(グレー破線)は高周波側での減衰が緩やかですが、寄生容量がある場合は共振周波数以上で急峻に減衰します。実際の変圧器を設計・選定する際には、この自己共振周波数が使用周波数帯域の十分上にあることを確認する必要があります。
  3. 高周波設計の指針: 自己共振周波数を高くするには、漏洩インダクタンスと寄生容量の両方を小さくする必要があります。漏洩インダクタンスは一次・二次巻線を密に配置することで(インターリーブ巻きなど)、寄生容量は巻線間の距離を確保することで低減できますが、この2つはトレードオフの関係にあるため、高周波変圧器の設計では最適なバランスを見つけることが重要です。

インピーダンス変換の数値的確認

ここまでで、理想変圧器のインピーダンス変換の公式 $Z_{\text{in}} = n^2 Z_L$ を導きました。この公式を等価回路のシミュレーション結果と比較して、どの周波数帯で理想的なインピーダンス変換が成り立つかを確認しましょう。

import numpy as np
import matplotlib.pyplot as plt

# === パラメータ ===
n = 10.0
R1 = 2.0
R2_ref = 2.0
Ll1 = 5e-3
Ll2_ref = 5e-3
Lm = 5.0
Rc = 50000.0
RL = 20.0          # 二次側負荷 [Ω]
RL_ref = n**2 * RL  # 一次換算

freq = np.logspace(-1, 6, 2000)
omega = 2 * np.pi * freq

# 等価回路から入力インピーダンスを計算
Z_Lm = 1j * omega * Lm
Z_mag = (Z_Lm * Rc) / (Z_Lm + Rc)
Z_sec = 1j * omega * Ll2_ref + R2_ref + RL_ref
Z_par = (Z_mag * Z_sec) / (Z_mag + Z_sec)
Z_in = R1 + 1j * omega * Ll1 + Z_par

# 理想変圧器の入力インピーダンス
Z_in_ideal = n**2 * RL

# === 描画 ===
fig, (ax1, ax2) = plt.subplots(2, 1, figsize=(10, 8), sharex=True)

# インピーダンスの大きさ
ax1.semilogx(freq, np.abs(Z_in), 'cyan', linewidth=2, label='|Zin| (real)')
ax1.axhline(y=Z_in_ideal, color='orange', linestyle='--', linewidth=1.5,
            label=f'|Zin| ideal = n²RL = {Z_in_ideal:.0f} Ω')
ax1.set_ylabel('|Zin| [Ω]')
ax1.set_title('Input Impedance vs Frequency')
ax1.legend()
ax1.grid(True, which='both', alpha=0.3)
ax1.set_ylim([0, Z_in_ideal * 2.5])

# 位相角
ax2.semilogx(freq, np.angle(Z_in, deg=True), 'cyan', linewidth=2)
ax2.axhline(y=0, color='orange', linestyle='--', linewidth=1, alpha=0.5)
ax2.set_xlabel('Frequency [Hz]')
ax2.set_ylabel('Phase of Zin [deg]')
ax2.grid(True, which='both', alpha=0.3)
ax2.set_ylim([-90, 90])

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

# 50Hzでの値を表示
idx_50 = np.argmin(np.abs(freq - 50))
print(f"50 Hz での入力インピーダンス: |Zin| = {np.abs(Z_in[idx_50]):.1f} Ω, "
      f"Phase = {np.angle(Z_in[idx_50], deg=True):.1f}°")
print(f"理想値: {Z_in_ideal:.0f} Ω")
print(f"誤差: {(np.abs(Z_in[idx_50]) - Z_in_ideal)/Z_in_ideal*100:.2f} %")

このグラフからインピーダンス変換について以下のことが読み取れます。

  1. 帯域内での一致: 設計周波数(50Hz)付近では、入力インピーダンスの大きさが理想値 $n^2 R_L = 2000 \, \Omega$ にほぼ一致しており、位相もほぼゼロ(純抵抗的)です。この帯域では理想変圧器のインピーダンス変換が良好に成立しています。
  2. 低周波での逸脱: 低い周波数では $|Z_{\text{in}}|$ が低下しています。これは励磁インダクタンスのインピーダンスが小さくなり、負荷と並列に大きな電流パスができてしまうためです。入力インピーダンスの位相も正の値(誘導性)に偏ります。
  3. 高周波での逸脱: 高い周波数では漏洩インダクタンスの影響でインピーダンスが上昇し、位相も誘導性に偏ります。インピーダンスマッチングの精度を確保するためには、変圧器の使用帯域を設計時に十分検討する必要があります。

まとめ

本記事では、結合インダクタと変圧器の理論について、相互インダクタンスの定義から実用的なインピーダンス変換まで体系的に解説しました。

  • 相互インダクタンス $M$ は、2つのコイル間の磁気的結合を定量化する量であり、結合係数 $k = M/\sqrt{L_1 L_2}$ で0から1のスケールに正規化される
  • 理想変圧器 では、電圧比は巻数比 $n$ に等しく、電力保存から電流比は $1/n$ となる。インピーダンスは $n^2$ 倍に変換される
  • T型等価回路 は、漏洩インダクタンス($L_{l1}$, $L_{l2}$)、励磁インダクタンス($L_m$)、巻線抵抗($R_1$, $R_2$)、鉄損抵抗($R_c$)を含む現実的な変圧器モデルである
  • 損失 は銅損(電流依存)と鉄損(電圧依存)に分類され、両者が等しくなる負荷で効率が最大になる
  • 高周波特性 は漏洩インダクタンスと寄生容量による自己共振で制限される

変圧器の理論は、回路理論の中でも特に応用範囲が広いテーマです。本記事の内容を基盤として、以下のトピックへ進むことができます。

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