非線形性を考慮した入出力特性の周波数特性をみたい
AC 解析は小信号応答を見るので,波形が飽和するような回路の周波数特性は見れません.飽和を見るには過渡解析が必要なので,入力信号の周波数をスイープしながら過渡応答解析を繰り返し,それぞれの結果から基本周波数成分を抜き出してプロットすればできるはずですが, LTspice に新しく追加された機能を使うと少しの工夫で見れることが分かったのでご紹介します.
やり方の概要
Transient Frequency Response 解析と,fra ブロックと組み合わせて使います.この機能でできる解析は,以下の2つです.
- Gain vs. Frequency (負帰還回路の開ループ利得を解析)
- Impedance vs. Frequency (電流を流したときに生じる電圧からインピーダンスを計算)
今回は後者を使います. fra ブロックは電流を出力し,その時の電圧を読み取って比をとることでインピーダンスを計算していますので,この電流を電圧に変換して対象の回路への入力とし,回路の出力を fra ブロックに電圧として戻します.これにより Transient Frequency Response 解析が「インピーダンス」として表示されるものが,回路の入出力特性になります.
使用例:電圧振幅が飽和するLPF
テストベンチの設定
使う回路を以下にしめします.周波数応答を見る対象 (DUT) は入力ノードX,出力ノードYとする,CRフィルタです.ただし,B1で電圧振幅を制限しています.
この DUT に対してfra ブロック @1 を接続します.@1 が出力する電流は電流制御電圧源 H1 で電圧に変換されて DUT の入力に与えられます.出力Yは電圧制御電圧源 E1 を介して @1 に戻します.
(E1 がない場合,@1 の出力する電流がノードYからDUTに流れ込んでしまうため,うまくいきません.)
@1 の設定はこちらです.注意するのは以下の3点です.
- Analysis Type を Impedance vs. Frequency にする
- Max # of Simultaneous Harmonics を 1 にする
- pp0 を 2 にして,pp1, F0, F1 は空欄にする
pp0 は,DUT に印加する電圧が片振幅 1V になるように設定しました.設定としては 2App ですが,前述したように H1 (今回は 1 V/A)で電圧に変換されます.
Max # of Simultaneous Harmonics は複数の周波数成分を重ね合わせることでシミュレーション時間を短縮する設定です.Max # of Simultaneous Harmonics = 1 および 2 の時のノードX の波形を見ると,Max # of Simultaneous Harmonics = 2 では高調波が重畳され,時間は半分で済んでいます.また,電圧振幅は高調波成分を含めて 2Vpp に調整されています.
今回は非線形性の影響が見たいので Max # of Simultaneous Harmonics = 1 にしておきます.
Max # of Simultaneous Harmonics = 1 | Max # of Simultaneous Harmonics = 2 |
この信号が B1 によって飽和させられた,ノード X1 での波形を以下に示します.橙 (飽和ナシ) は正弦波ですが,赤 (飽和アリ) は ±1V の矩形波に近くなっています.
シミュレーション結果
シミュレーション結果を以下に示します.橙が飽和ナシ,赤が飽和アリです.
飽和していない場合 (橙) の低周波利得は 0 dB で,160kHz 付近でカットオフしています.これは 1次 CR LPF の特性として期待されるものです.一方飽和ありの場合 (赤) の低周波利得は 2.09 dB です.これは,片振幅 1V の矩形波の基本周波数成分が $4/\pi$ V で, $20\log(4/\pi) = 2.09$ であることと整合します.
まとめ
fra ブロックと Transient Frequency Response 解析を使用して,電圧入力,電圧出力の回路の周波数特性を非線形性を考慮した状態で解析し,その基本周波数成分をプロットする手順を示しました.