共振回路のQ-factor

how-to

共振回路のQ値(Quality factor)を抽出するユーザー定義関数を紹介します.共振回路の等価キャパシタンス,等価インダクタンスを抽出する関数も合わせて紹介します.この方法はSonnetの解析結果だけでなく測定結果や公開されているSパラメータ(s2pファイル)にも適用できます.Q値はヴィアや線路など低損失な系の評価,アンテナの放射損失など多くの重要な概念に応用できます.

応用例 : アンテナの放射効率の算出

ソネット入門に掲載されている逆Fアンテナのモデルを例に,この関数を使ってアンテナの放射効率を算出してみました.

  1. ソネット入門に掲載されている逆Fアンテナのモデルをグラフに表示してQuality factorを求めます.
  2. モデルを別の名前に保存して,導体を無損失の理想導体に,基板のtandを0にして解析し,Quality factorを求めます.
  3. 上の2つのQの比からアンテナの放射効率を求めます.

アンテナから送信する場合を考えると,アンテナに注入されたエネルギーの一部はアンテナ内部でおそらくは熱になり,残りが空間に放射されます.注入されたエネルギーと空間に放射されるエネルギーの比がアンテナの放射効率\(\eta\)です.これをQで表現すると

\(\eta=\frac{Q_t}{Q_r}\)

\(\frac{1}{Q_t}=\frac{1}{Q_r}+\frac{1}{Q_i}\)

ここに\(Q_t\)はアンテナ全体のQuality factor, \(Q_r\)は空間に放射されるエネルギー損失による,\(Q_i\)はアンテナ内部の損失によるQuality factor,です.

このユーザー定義関数の使い方

ユーザー定義関数を読み込む

  1. 上記のユーザー定義関数ファイル q.eqnをダウンロードして保存しておく.
  2. sonnetでGraphタブを選ぶか,[Launch][Graph Response]でGraphタブを開く
  3. グラフのタブで[Graph][User Equations…]でuser equationsダイアログを開く
  4. user equationsダイアログで[Load and Replace…]ボタンか[Load and Appned…]ボタンをクリックする
  5. 上記で保存したファイルを指定する.
  6. 読み込まれたユーザー定義関数が現れるので[OK]ボタンでダイアログを閉じる

Qを抽出する

直列共振回路(共振周波数でインピーダンスが最小になる)場合

  1. [Graph][Manage Curves…]でManage Curvesダイアログを開く
  2. ➕AddLeft AxisCurveを追加しMeasurementをZ-parametersに,FormatImaginaryに,Data SourceFileparametersを目的のデータに設定する.Portsは原則`1,1`だが,それ以外の場合は”ポートが11以外の場合”を参照
  3. ➕AddRight AxisCurveを追加しMeasurementをQzに,Data SourceFileparametersを目的のデータに設定する.
  4. ➕AddRight AxisCurveを追加しMeasurementをLzに,Data SourceFileparametersを目的のデータに設定する.
  5. [OK]でManage Curvesダイアログを閉じる
  6. 追加したCurve(例えばImag[Z11])が負から正に右上がりで0を横切る周波数が,共振周波数なので,その周波数でQz(Quality factor)とLz(等価直列インダクタンスEquivalent Serial Inductance)を読み取る.

並列共振回路(共振周波数でインピーダンスが最大になる)場合

  1. [Graph][Manage Curves…]でManage Curvesダイアログを開く
  2. ➕AddLeft AxisCurveを追加しMeasurementをY-parametersに,FormatImaginaryに,Data SourceFileparametersを目的のデータに設定する.Portsは原則`1,1`だが,それ以外の場合は”ポートが11以外の場合”を参照
  3. ➕AddRight AxisCurveを追加しMeasurementをQyに,Data SourceFileparametersを目的のデータに設定する.
  4. ➕AddRight AxisCurveを追加しMeasurementをCyに,Data SourceFileparametersを目的のデータに設定する.
  5. [OK]でManage Curvesダイアログを閉じる
  6. 追加したCurve(例えばImag[Y11])が負から正に右上がりで0を横切る周波数が,共振周波数なので,その周波数でQy(Quality factor)とCy(等価並列キャパシタンスEquivalent Parallel Capacitance)を読み取る.

ポート

共振回路は本質的に2つの端子に接続されるので,1ポート回路でなければならない.2ポート以上の系で測定やシミュレーションした場合にはなにかの方法で1ポートに変換しなければならない

特定の1ポートに接続された共振回路だけを観測する場合

Manage Curvesダイアログで観測したいポートを指定するとともに,ユーザー定義関数の引数を下記の手順で変更しなければならない.

  1. [Graph][User Equations…]でuser equationsダイアログを開く
  2. user equationsダイアログで編集すべき関数を選んで[編集]ボタンをクリックし,Equation Editorを開く
  3. Equation Editorexpressionので最初の行ARG A = z 1111を目的のデータのポートに設定する
  4. [OK]ボタンで編集を終了する
  5. [OK]ボタンでEquation Editorを閉じる

2ポートに共振回路が接続された場合

右図のように不要なポートを短絡なり開放(大きな抵抗)することで1ポート回路に変換できる.

series-thru接続の場合はY11から並列共振周波数のQyと等価並列キャパシタンスCyを抽出できる.

shunt-thru接続の場合はZ11から直列共振周波数のQzと等価直列インダクタンスLzを抽出できる

関数の定義内容と理論

Q factor

大平 孝, “共振回路のQファクタ”によれば

\(Q=\frac{\omega_0}{2}\left| \frac{z'(\omega_0)}{z(\omega_0)} \right|\)

or
\(Q=\frac{\omega_0}{2}\left| \frac{y'(\omega_0)}{y(\omega_0)} \right|\)

これをsonent emgraphのユーザー関数に実装すると.

ARG A=y11

FREQ/2*mag(
(A[f+1]-A[f-1])
/(FREQ[f+1]-FREQ[f-1])
/real(A[f]))

一行目のARG A=は,並列共振ではARG A=y11,直列共振ではARG A=z11に.
一つの系で並列共振と直列共振が同居していることは多いから,別の関数QzQyにした.分母のreal(A[f])は本来はmag(A[f])だが,共振周波数ではreal(A[f])と等しい.real(A[f])の方が共振周波数からずれた領域での変化がmag(A[f])より穏やかで読み取りやすいのでreal(A[f])とした.

共振回路の等価素子

ARG A = y11

imag(
(A[f+1]-A[f-1])
/(FREQ[f+1]-FREQ[f-1])
)
/2/2/pi

一行目のARG A=は,並列共振ではyを選んで等価キャパシタンス,直列共振ではzを選んで等価インダクタンスが関数の値となる.

検証

右図のようにポート1に直列共振回路,ポート2に並列共振回路を接続した回路で検証してあります.

どちらの共振回路も\(\omega_0 =1 \mathrm{(Grad/sec)}, Q=100\)