NETLIST STUDIO GUIDE

SPICE解析

1 kΩ/100 nFのRC回路でOP、AC、TRANを実行します。

PDF版をダウンロードSHA-256 9b97453016ec

解析を選ぶ

解析ディレクティブ何を固定/変化させるか主な用途
OP.op1つの直流動作点分圧、bias、node電圧
DCスイープ.dcDC電源を範囲内で変化入出力特性、動作範囲
TRAN.tran時間を進めるRC立上り、PWM、過渡応答
AC.ac小信号周波数を掃引filterの振幅と位相

OPで時間波形は得られません。ACは設定した小信号振幅を使い、TRANは電源部品の時間波形を使います。目的と異なる解析を選ぶと、正常な回路でも期待したGraphになりません。

電圧分割回路でOPを確認する

  1. 回路エディタで保存した分圧Projectを開きます。
  2. 解析OPを選びます。
  3. SPICE入力プレビューに.opが1行だけ含まれることを確認します。
  4. ngspice解析を実行します。
  5. VP001が約5 V、各値がfiniteであることを確認します。

計算値と一致しない場合は、解析を変える前に回路のGND、抵抗値、probe netを修正します。

練習2: RCローパス回路を作る

分圧Projectを名前を付けて保存…rc-low-pass.netgrid.jsonへ複製してから、次の回路へ作り替えます。

V001(+) ──┬── R001 1k ──┬── VOUT
          │             ├── VP_OUT(GND基準)
        VP_IN            │
      (GND基準)      C001 100n
                        │
V001(-) ────────────────┴── GND
部品値/設定役割
AC電源V001AC小信号振幅1、位相AC解析の入力
抵抗R0011k Ωseries抵抗
コンデンサC001100n F高周波をGNDへ流す
VプローブVP_IN入力net入力の基準系列
VプローブVP_OUT出力netfilter出力
GND0 V共通基準

VプローブのRefIDは実際の自動採番と異なる場合があります。学習中はlabelを入力電圧出力電圧にするとGraphで識別しやすくなります。

この回路の時定数と遮断周波数は次のとおりです。

τ = R × C = 1k × 100n = 100 µs
fc = 1 / (2πRC) ≈ 1.59 kHz
図4-1 RCローパス回路と解析設定の全体
図4-1 RCローパス回路と解析設定の全体
RCローパス回路と解析パネルを表示したワークスペース全体。回路、解析種別、設定に番号が付いている
  1. RC回路: 入力、1 kΩ、100 nF、入力・出力プローブ、GNDを接続します。
  2. 解析種別: ACまたはTRANを目的に合わせて選びます。
  3. 解析条件: sweep範囲やstep/stop timeを確定してから実行します。

RCローパスのAC解析

  1. 解析種別をACにします。
  2. sweepをdec、1 decadeあたりの点数を100にします。
  3. 開始周波数を10 Hz、終了周波数を100k Hzにします。
  4. AC電源の小信号振幅が1、位相がであることを再確認します。
  5. プレビューの.ac dec 100 10 100k相当と、VP_INVP_OUTの保存対象を確認します。
  6. ngspice解析を実行し、振幅dBと位相を表示します。
図4-2 AC解析の設定
図4-2 AC解析の設定
AC解析のsweep方式、開始周波数、終了周波数、点数を表示した設定パネル

同じ部品値と理想モデルなら、次を目安にします。

  • 低周波のVP_OUT / VP_INは約0 dB。
  • 約1.59 kHzで約-3.01 dB、位相は約-45°。
  • 遮断周波数より十分高い領域では、おおむね-20 dB/decadeで減衰。
  • 位相は0°付近から-90°へ近づく。

値が合わない場合は、AC電源の通常波形値ではなくAC小信号振幅、コンデンサの単位、probe位置を確認します。

図4-3 RCローパスのAC解析結果
図4-3 RCローパスのAC解析結果
RCローパスのAC解析Graph全体。系列、減衰曲線、2点測定パネルに番号が付いている
  1. 系列: 入力電圧と出力電圧の両方が表示対象になっていることを確認します。
  2. 減衰曲線: 低周波では約0 dB、遮断周波数以降は低下する形を読みます。
  3. 測定パネル: A/Bの実周波数と差分を数値で確認します。
図4-4 1.59 kHz付近の測定値
図4-4 1.59 kHz付近の測定値
測定点Aが1584.893Hz、Bが3162.278Hzへsnapされた2点測定パネル

画面例ではAが1584.893 Hzへsnapされています。理論値1.59 kHzとの差はsweepの離散点によるもので、表示された実X値を結果記録へ残します。

RCローパスのTRAN解析

AC解析用Projectをもう一度名前を付けて保存…で複製し、AC電源を矩形波電源へ置き換えます。

矩形波設定
low/high0 V/1 V
delay100us
rise/fall1us1us
width800us
period2ms

TRANはstep timeを2us、stop timeを1.2msにします。use initial conditionsは最初は無効のままにします。

図4-5 TRAN解析の設定
図4-5 TRAN解析の設定
TRAN解析のstep time、stop time、初期条件を表示した設定パネル

立上りが100 µsから始まるため、理想RCの出力はおおよそ次の値になります。

時刻step後の経過出力の目安
200 µs約0.632 V
330 µs約2.3τ約0.90 V
600 µs約0.993 V

矩形波の有限rise timeと数値刻みがあるため、完全一致ではなく傾向と許容差で確認します。

図4-6 RCローパスのTRAN解析結果
図4-6 RCローパスのTRAN解析結果
RCローパスのTRAN解析Graph全体。入力矩形波、RC出力、2点測定に番号が付いている
  1. 入力系列: 0 Vから1 Vへ変化する時刻を基準にします。
  2. RC出力: 指数的に立ち上がり、入力が下がると指数的に減衰します。
  3. 2点測定: A/Bの実時刻、Δt1/|Δt|を同じパネルで確認します。
図4-7 RC時定数付近の2点測定
図4-7 RC時定数付近の2点測定
約96.7マイクロ秒の差分と周波数換算を表示したTRANの2点測定パネル

画面例のデータ点へsnapしたΔt9.671e-5 sです。理論値100 µsと比較し、B側の出力が約0.62 Vであることも同時に確認します。

ngspice解析を実行する

  1. 右ペインのシミュレーションを開きます。
  2. 解析種別と条件を確定します。
  3. 推定解析点数と警告を確認します。
  4. ngspice実行を開始し、完了表示を待ちます。
  5. 波形を開きます。

結果がGraphに表示されれば完了です。大量データの詳細解析は別windowへ遅延読込されます。解析点数が多いという警告がある場合は、必要な時間/周波数範囲とstepを見直します。上限を回避するためだけに意味のない粗いstepへ変更しないでください。

ngspiceが見つからない場合は、設定から実行ファイルを選択します。実行に失敗した場合は、SPICE入力プレビューと最初に表示されたngspice診断を確認してください。

SPICE入力を書き出す

  1. 右ペインのNetlistを開きます。
  2. ngspiceまたはltspiceを選びます。
  3. OP、DCスイープ、TRAN、ACのいずれかを選びます。
  4. 解析条件とプレビューを確認します。
  5. SPICE入力一式を書き出すを実行し、Projectとは別の保存先を選びます。

出力フォルダーには対象別の.cir、LTspice用の補助ファイル、manifest.jsonが含まれます。LTspiceの.raw.logはシミュレーター実行時に生成されます。書き出し後にProjectを変更した場合は、古い.cirを現在のProjectの成果物として扱わず、再生成します。

完了チェック

  • OP、AC、TRANの違いを説明できる。
  • 分圧回路で約5 VのOPを確認した。
  • 1 kΩ/100 nFのRC回路を作り、τ=100 µsfc≈1.59 kHzを計算した。
  • ACで約-3 dB/-45°の点を確認した。
  • TRANで1τ、約2.3τ、5τの立上りを確認した。
  • ProjectとSPICE書き出し成果物を別に管理した。