LTspiceを使ってみよう -「.step」でパラメーターを変化させてみよう では、繰り返し解析としてパラメーターを変化させる「Stepコマンド」をご紹介しました。今回は、「モンテカルロ解析」の使い方をご紹介します。

もしLTspiceを今から始められる方でしたら、以下の一覧から「基本編」を見ることをお勧めします。 

LTspiceを使ってみようシリーズ 一覧はこちら


また、基本的な回路の書き方から実行方法までを動画で見たいという方がいましたら、個人情報入力不要のオンデマンドセミナーがありますので、ご興味がありましたらぜひご覧ください。セミナーの詳細資料に関してもアンケートご記入の方に提供しています。

LTspice オンデマンド セミナー ~ RC回路で機能確認 ~

モンテカルロ解析とは?

モンテカルロ解析は、乱数を用いて部品公差にランダムな組み合わせを発生させることで、回路の動作変化を確認することができます。
そのため回路の歩留りを予測したり、設計仕様に合う部品定数を検証することができます。

mc関数を使って抵抗のバラツキをみてみよう

SPICEでのモンテカルロ解析は、一般的に疑似乱数(関数)を部品誤差として与え、パラメーターを変動させます。

LTspiceでは、自動でモンテカルロ解析をおこなうメニューがありませんので、関数指定とStepコマンドを組み合わせて使用します。

今回は、mc関数を使ってみたいと思います。
mc(x, y)関数は、x*(1+y)値 から x*(1-y) 値間で、一様分布の乱数を発生させます。

まず図1のように抵抗の値に関数を指定します。

今回の例では、抵抗1kΩ(公称誤差5%)を {mc( 1k, tol )} で設定します。
次に 、Stepコマンドで0~999として1000回の繰り返しをおこないます。

Article header library 128133 pic01  1
図1:mc関数で抵抗1k±5%(ohm)をランダムに発生

シミュレーション結果は、図2の通りです。

今回は、抵抗両端に生じる電圧のバラツキを抵抗のバラツキとして確認しています。
縦軸が抵抗に生じた電圧値、横軸がステップ回数となります。

Article header library 128133 pic02  1
図2:抵抗のバラツキ結果(1000サンプル)

このグラフデータをExcelに取り込んで、ヒストグラムにしたものが図3になります。
抵抗に発生する電圧(抵抗)のバラツキが、均一の分布になっていることがわかります。

Article header library 128133 pic03  1
図3:電圧(抵抗)ばらつきのヒストグラム

フィルターのカットオフ周波数を検討してみよう

モンテカルロ解析の良いところは、複数の部品定数がどのように関係し合うのかを確認できることです。
ここでは抵抗とコンデンサー2つの部品を使いRCフィルターを作り、カットオフ周波数の変動を確認してみます。

使用する抵抗値は1k±0.5%(ohm)、コンデンサーは0.01u±20%(F)とするので、抵抗R1の定数を {mc(1k, 0.05)}、C1の定数を {mc(0.01u, 0.1)} にします。

繰り返し回数はStepコマンドを用いて0~999の合計1000回とします。

Article header library 128133 pic04  1
図4:RCフィルター回路(mc関数でRとCに誤差を加える)

シュミレーション結果(AC特性)は、図5となりゲイン(縦軸)の-3dBのポイントがカットオフ周波数です。

Article header library 128133 pic05  1
図5:フィルタのAC特性結果(1000サンプル)

この図5では、結果が分かり難いため、「.meas」コマンドでカットオフ周波数(-3db)のポイントを計算し、結果のバラツキをExcelでヒストグラム(図6)にまとめました。

Article header library 128133 pic06  1
図6:カットオフ周波数のヒストグラム

誤差がない場合のカットオフ周波数は Fc=1/(2*π*R*C)=15.915kHz(約16kHz)です。
今回は一様分布の乱数を加え抵抗とコンデンサーをかけ合わせているのでと、カットオフ周波数の最小値(約12.6kHz)と最大値(約20.6kHz)の正規分布の様な形になるはずです。しかし、今回は、バラツキが抵抗とコンデンサーで違いがあり、コンデンサーは20%と大きな誤差があり1,000ポイントプロットでは少なかったのか分布の山が少し砕けたような形になっています。

 

デモファイルをダウンロードして、同じ5%誤差にしてヒストグラムの分布を作ると正規分布になると思います。

ぜひ、ダウンロードして確認してみてください。

今回検証したLTspiceデモ・ファイル

LTspiceインストール済のパソコンで、zipファイルを同一フォルダに解凍後、LTspiceを実行すると波形表示が自動的に始まります。

R_mc__1.zip

抵抗Rの⼀様分布_シミュレーションファイル

RC_mc__1.zip

RC回路の⼀様分布_シミュレーションファイル

最後に

今回はLTspiceにおけるモンテカルロ解析の例をご紹介しました。

バラツキを設定してシミュレーションをすることで、回路の挙動やシステム全体への影響度合いを把握することができます。ただし、与える関数を一様分布のにするのか、他の乱数関数を使うべきなのかは別途検討が必要になります。

LTspiceでは様々な関数(Gaussianなど)をサポートしていますので機会があれば試してみてください。これらの関数はLTspiceのHelpメニューで確認ができます。

また、LTspiceセミナーも定期的に実施しています。LTspiceの基本操作を習得できますのでご参加ください。

LTspiceセミナーの情報はこちら


おすすめ記事/資料はこちら

LTspice 記事一覧:LTspiceを使ってみようシリーズ

LTspice  FAQ :  FAQ リスト

技術記事一覧  :  技術記事

メーカー紹介ページ  :  アナログデバイセズ社  

LTspice セミナー情報

アナログ技術セミナー情報はこちら

お問い合わせ

本記事に関してご質問がありましたら、以下よりお問い合わせください。

アナログ・デバイセズ メーカー情報Topへ

アナログ・デバイセズ メーカー情報Topに戻りたい方は以下をクリックしてください。