LTSpice 17.1 FRAモジュールを用いた解析① スリューレートによる帯域制限シミュレーション
スリューレートによる帯域制限シミュレーション
LTSpice 17.1から、機能が大きく変わった。
まず、17.0のアップデートではどうも17.1にはならず、元からダウンロードの必要がある。
そして17.0と共存可能。ほとんどの設定は引き継がれる。(私の場合はライブラリのフォルダをちょっと変更しなければならなかった)。
で、話題のFRAモジュールが追加になった。これが、Gain v.s. FrequencyモードとImpedance v.s. Frequencyモードの二つがある。
前者はフィードバックループの中にFRAモジュールを挿入して使う。後者はその他、電流源出力で両端の電圧を得て、結果はImpedance(Ω=V/A、トランスインピーダンス・ゲインととらえることもできる、[FRAモジュールの両端の電圧] / [FRAモジュールが出力した電流])をトランジェント解析結果として表示する。
そう、このFRAモジュールは設定した周波数範囲、少しずつ周波数をスキャンしながらトランジェント解析を繰り返してシミュレーションする。
まさに実際の測定器のFRAやVNAと同じことをやっている。
ん?となると、振幅による周波数特性の違いもシミュレーションできるはず。
つまりスリューレートに引っかかって波形が三角波になって振幅が落ちる事で帯域が落ちる様子をシミュレーションできるはずだ。
SPICEでは、基本、AC解析での周波数特性は「微小信号であったときの周波数特性」が求まるのであって、振幅に帯域が依存するシミュレーションはできない。AC解析で振幅設定ができるが、それは単に入力振幅を指定して出力がどのくらいの電圧が出ているか、だけを確認するものである。
それで早速やってみた。
下記の回路となった。
OP07という、スリューレートが低い、古典的なオペアンプのモデルを使用した。
FRAモジュール@1の両端に電圧制御電圧源E1(ゲイン1倍)の出力がついている。オペアンプの出力電圧をモジュールの両端に加えるため。アイソレーションの必要があるのでこうした。
H1は電流制御電圧源、電流源にE1を指定する。H1を制御する電流はE1に流れ込む電流=FRAの出力電流、となる。H1素子のゲインを変更するため、TIGという変数を作り、ステップ解析でTIGを10(出力2Vpp)と100(出力20Vpp)として二種類の振幅をアンプに入力する。アンプのゲインはあくまで固定(R1,R2で2倍に設定)であり、入力振幅が変わっただけで、従来のAC解析では出力の帯域は変わることはない。
付加は意地悪っぽくやや重めに3kΩ。
FRAモジュールの設定は下記。出力0.1Appに設定。ほかは適当である。
各設定は以下のよう。
解析はTransient Frequency Responsで設定、特に詳細パラメータを入力する必要もないかもしれないがとりあえず図の様にMaximum Timestepを設定。
シミュレーション結果は以下となった。
図6、振幅2種類、26dBと46dB、二つの違いは入力振幅だけを変えており、ゲインを変えていないアンプで帯域が変わっている。
図7、同じものを、縦軸を実数(log)表示。トランスインピーダンス・ゲイン?は、20Ω(=2 Vpp/0.1A)、200Ω(=20Vpp/0.1A)の特性となる。入力電圧に換算すると、出力電流は0.1Aに設定したので、それぞれ1Vpp、10Vppとなる。それのゲイン2倍が出力振幅。
振幅の大きな方のカットオフが約7kHzと読み取れ、そこら周辺の出力振幅を見てみると下図。
丁度7kHzのちょっと下の6.37kHz、大きい振幅のほう、三角波となって振幅が10Vppを切っている。これより低い周波数では正弦波になっているのが見える。あきらかにスリューレートに引っかかって振幅が落ちている。
もうすこし拡大したのが下図。
周波数をスキャンして、ここよりも低い周波数では正弦波になっているのが良く見える。
振幅が小さい方の波形はずっと正弦波になっている。
※正弦波の不連続点は周波数が変わったポイント
と、いうことで、FRAモジュールでトランジェント解析を使って周波数をスキャンすることで帯域をシミュレーションすることが可能となった。
ただ、出力がImpednceで出てくるので、ちょっと違和感がありますね。
これはスリューレートチェックに大いに役立ちます。
ちなみに回路はH素子を使わなくても下図のようにR4にてI/Vしても全く同じ特性をシミュレーションできます。