シミュレーションを複数回実行し、複数のコンポーネント値を変更することは、1つを変更するだけではありません(それほど悪くはありません)
1つの値を変更するための概念は次のとおりです。
- 抵抗値など、右端のSPICEディレクティブアイコンを使用して.paramステートメントを追加します
.param X=R
- それを使用するには、抵抗値に{x}を入力し、たとえば
.step param X 100 500 50
、100から500までの値を50刻みでステップすることを含めます。
例:
結果:
複数の値の場合、私が見つけた唯一の方法は、Xの値のリストを使用し、tableステートメントを使用することでした。これはおそらく例を使用して説明するのが最適です(使用するコマンドのヘルプを読むと役立つでしょう)。ただし、テーブルコマンド構文はtable(index、x1、y1、x2、y2、.... xn、yn)の形式であり、入力としてインデックスを取り、指定されたxに基づいてx = indexの補間値を返すことに注意してください。 、yペア。
シミュレーションの1つで、3つの異なるコンポーネント値を変更しながら12のシミュレーションを実行する必要がありました。コマンドは次のとおりです。
.step param X list 1 2 3 4 5 6 7 8 9 10 11 12
.param Rin1 = table(X, 1, 1,1p, 2, 1p, 3, 1p, 4, 4478, 5, 4080, 6, 3400, 7, 2200, 8, 1p, 9, 1p, 10, 1p, 11, 1p, 12, 1p)
.param Rin2 = table(X, 1, 4997, 2, 4997, 3, 4997, 4, 499, 5, 897, 6, 1577, 7, 2777, 8, 4997, 9, 4997, 10, 4997, 11, 4997, 12, 4997)
.param Tval = table(X, 1, 56, 2, 56, 3, 27, 4, 1G, 5, 1G, 6, 1G, 7, 1G, 8, 1G, 9, 330, 10, 330, 11, 120, 12, 120)
.param Kval = table(X, 1, 316, 2, 147, 3, 147, 4, 6340, 5, 6340, 6, 6340, 7, 6340, 8, 6340, 9, 6340, 10, 825, 11, 825, 12, 316)
結果:
うまくいけば、アイデアを得て、希望する値を入力するときに必要なSPICEコマンドを生成するスクリプトを作成できるかもしれません。または、単にテンプレートを作成します(たとえば、上記をコピーしていくつかの異なるシミュレーションに貼り付け、値を変更しました)
上記のあなたがやりたいしない場合は、多分NIのMultisimのようなものを見て(私は彼らがどのように有用ではないんですけれども、それは、いくつかのバッチ・シミュレーション・オプションを持っていると思う)またに尋ねることは有用かもしれLTSPiceフォーラムで誰かが物事を行うためのより良い方法を知っているかどうかを確認します。