発振を停止させるのに有効な回路はどっち?
図1の回路(a)と(b)は,発振を停止させるために,帰還抵抗に並列のコンデンサを加え進相補償を行う反転増幅器です.使用するOPアンプは,理想OPアンプとします.特性は,直流オープン・ループ・ゲインは120dBです.周波数特性は,1st poleが1Hzで,2nd poleが100kHzです.また,クローズ・ループ・ゲインは,回路(a)が-1で,回路(b)が-10となります.この場合,進相補償の効果が期待できる回路は,(a)と(b)のどちらでしょうか?この問題はビギナ・エンジニアの方を対象にしています.
回路の違いは,帰還抵抗「R2とR4」とコンデンサ「C1とC2」の値が違う
回路(b)
回路(a)と(b)は,負帰還回路が発振した時に帰還抵抗へコンデンサを並列に接続して発振を停止させる方法です.クローズ・ループ・ゲインが小さいと位相を進ませるゼロ点周波数の付近に新たなポール(極)が生まれます.逆に,ゲインが大きいとゼロ点から離れた周波数にポールができ,発振を停止させる効果が期待できます.
●ループ・ゲインと位相周波数特性は,-A(s)とβ(s)の積
図2は,回路(a)と(b)のループ・ゲインや位相周波数特性を調べる回路です.図2回路(a)と(b)のように,負帰還回路を一巡するループ・ゲインと位相周波数特性は,-A(s)とβ(s)の積[-A(s)β(s)]から求められます.-A(s)は,OPアンプのオープン・ループ周波数特性で,マイナスは,OPアンプの反転端子に接続するためです.β(s)は帰還率で,「R1とR2とC1」または「R3とR4とC2」からなる減衰率(式1)となります.C1やC2のコンデンサにより,帰還率で位相が進められて,-A(s)β(s)の進相補償を行います.
●進相補償は,ゲインを大きく設定
図3は,図2(a)と(b)のループ・ゲインと位相周波数の特性を示しました.2nd pole(周波数:100kHz)をゼロ点と設定し,帰還抵抗(R2,R4)と並列のコンデンサ(C1,C2)で構成しています.目的は,コンデンサによるβ(s)の位相を進ませる進相補償を行い,実線のループ・ゲインと位相周波数特性[-A(s)β(s)]の減衰を,破線のように-20dB/decへ戻そうとします.しかし,回路(a)はゼロ点の付近に新たなポールを作るためその効果はあまり期待できません.このように,進相補償は,ゲインを大きく設定しないと効果が現れません.
実線はC1とC2が無い場合で,破線はゼロ点を配置し進相補償をする場合
●ゼロ点周波数と新たにできるポール周波数の関係を計算で導く
図2の回路(a)を用いてβ(s)を計算し,ゼロ点周波数と新たにできるポール周波数の関係を導きます.ゼロ点周波数をfz,新たに生まれるポールをfpとして,β(s)は,R2とC1の合成インピーダンスとR1からなる減衰率ですので,
・・・・・・・・・(1)
式1の分子がゼロ点,分母が新たに生まれるポールです.ここで,分子のゼロ点の周波数は,
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・(2)
式1の分母で生まれるポールの周波数は,
・・・・・・・・・・・・・・・・・・・・・(3)
式3に示すように,新たに生まれるポール周波数(fp)はゼロ点周波数(fz)の(R1+R2)/R1倍した周波数になります.クローズ・ループ・ゲインが小さい(R2/R1が小さい)とゼロ点周波数の付近にポールが生まれ,ゼロ点で位相を進めようとしても,またすぐにポールの付近で位相が遅れます.このように帰還抵抗にコンデンサを並列接続し進相補償する方法は,クローズ・ループ・ゲインが大きくないとその効果が期待できません.
●LTspiceで問の回路を調べる
図4は,クローズ・ループ・ゲインが「-1」のループ・ゲインと位相周波数特性をシミュレーションする回路です.使用するOPアンプは,図1のものと同等の理想OPアンプです.入力オフセット電圧や入力オフセット電流などの直流誤差はありません.一巡するループのどこかで,配線を切ることにより,そのループ・ゲインと位相周波数特性をシミュレーションできます.ここでは,OPアンプの出力の部分で切り離しました.図4のシミュレーション回路にはゼロ点がない場合のループ・ゲインと位相周波数特性を比較するため,C1が無い回路も用意しました.
図5は,図4のシミュレーション結果です.クローズ・ループ・ゲインが1で小さな場合は,ゼロ点の近傍周波数に新たなポールが生まれています.
比較のためC1が無い回路も同時にシミュレーションを実施
図6は,クローズ・ループ・ゲインが-10のループ・ゲインと位相周波数特性をシミュレーションする回路です.図7がそのシミュレーション結果です.こちらはクローズ・ループ・ゲインが10倍あり,式3の関係で新たに生まれるポール周波数は高くなっています.
比較のためC1が無い回路も同時にシミュレーションを実施
●「.MEAS」コマンドの解説
図5と図7のシミュレーション結果で,新たに生まれるポール周波数をカーソルの機能で探し出すのは大変です.ここでは,他に位相遅れを起こす要因はないため,新たなポールは位相が45°の位置です. これらを測るため図4と図6の回路図へ位相が45°になる周波数を探す「.MEAS」コマンドを入れました(図8).
例として,Loop2a端子の位相が45°に周波数を探すWHENはLTspiceの文法から,「.MEAS AC Loop2a_fp2 WHEN ph(V(Loop2a))=45」(図6)となり,内容は,「ACにおいてLoop2a端子の位相が45°になる周波数を変数Loop2a_fp2へ入れなさい」となります.
「.MEAS」コマンドの結果は,ログ・ファイルに記録されます.ログ・ファイルを見るときはメニューバの「View > SPICE Error Log」または,ショートカット・キーの「Ctrl+L」でログ・ファルのウィンドが現れます.図4と図6のシミュレーション実行後のログ・ファイルには次のように出力されました.この値と式3で計算した値を比較してみましょう.
図4のMEASコマンドの結果
loop1b_fp2: ph(v(loop1b))=45 AT 100002 ・・・・ コンデンサが無い時
式3で計算したコンデンサで進相補償したLoop1a_fp2は,
(1kΩ+1kΩ)/1kΩ×100kHz=200kHz
図6のMEASコマンドの結果
loop2b_fp2: ph(v(loop2b))=45 AT 100002 ・・・・・・・・ コンデンサが無い時
式3で計算したコンデンサで進相補償したLoop2a_fp2は,
(1kΩ+10kΩ)/1kΩ × 100kHz = 1.1MHz
これで,ゼロ点で進相補償した場合,新たに生まれるポール周波数は,式3の結果と同じだとわかります.発振した場合によく使う補償方法です.クローズ・ループの値によって新たに生まれるポール周波数の関係を覚えておくといいでしょう.
解説に使用しました,LTspiceの回路をダウンロードできます.
LTspice013.zip
●データ・ファイル内容
Ideal_OP2.asc:理想OPアンプの回路
Ideal_OP2.asy:理想OPアンプのシンボル
Inverting_Amplifier1_Loop.asc:図4の回路
Inverting_Amplifier2_Loop.asc:図6の回路
※ファイルは同じフォルダに保存して,フォルダ名を半角英数にしてください
■LTspice関連リンク先
(1) LTspice ダウンロード先
(2) LTspice Users Club
(3) トランジスタ技術公式サイト LTspiceの部屋はこちら