PCBにコンポーネントを配置するときは、まるで賭けをしているようなものです。すべてのコンポーネントには許容差があり、その中には非常に精密なもの(例えば、抵抗器)もありますが、名目値に対して非常に幅広い許容差を持つコンポーネントもあります(例えば、ワイヤーワウンドインダクターやフェライトなど)。これらのコンポーネントの許容差が大きくなりすぎた場合、これらの許容差が回路にどのような影響を与えるかをどのように予測できるでしょうか?
名目上の電気的値(電圧、電流、または電力)の周りで変動を手計算で計算することはできますが、特に大規模な回路では、これらの計算を手作業で行うのは非常に時間がかかります。しかし、SPICEシミュレーターは、これらの質問に答えるのに役立つ、確率論から借用した非常に便利なタイプのシミュレーションを提供しています。このタイプのシミュレーションはモンテカルロとして知られており、Altium DesignerのSPICEパッケージでこのシミュレーションを実行することができます。
この記事では、モンテカルロシミュレーションを理解し構築するために関わる理論の概要を提供し、次に電力レギュレータ回路の例示結果と、許容差によって結果がどのように影響を受けるかを示します。モンテカルロシミュレーションは、回路の動作に関する統計を取るために使用できる多くのデータを生成し、これにより製品がコンポーネント値の許容差によって仕様を満たす可能性が高いかどうかをよく理解できます。
モンテカルロシミュレーションは、シンプルなプロセスに基づいて動作します:ランダムに一連の数字を生成し、そのランダムな数字を数学的モデルに使用して何か有用なものを計算します。SPICEでモンテカルロシミュレーションが使用される場合、シミュレーションは定義した許容差を使用して回路内のコンポーネント値をランダムに生成します。それから、これらランダムに生成されたコンポーネント値を使用して標準のSPICEシミュレーションを実行します。このプロセスは複数回(時には100回以上)繰り返され、コンポーネントの許容差によって回路の挙動がどのように変化するかを説明するデータセットを提供します。
SPICEパッケージは、モンテカルロシミュレーションをシンプルなプロセスを通じて実装します。これにはランダムな数の生成と、標準SPICEアルゴリズムでの電圧と電流の計算が含まれ、その後、結果を表またはグラフで表示します:
次の例では、以下に示すバックコンバータ回路を使用しました。この回路は、主要セクション(L1)で比較的大きなインダクタを使用し、出力にLフィルタを続けてスイッチングノイズをさらに減らします。出力キャパシタには、過渡応答の強度を減らし出力電圧を滑らかにするスナバ抵抗があります。
この回路は、入力された25Vを約6.75Vまで降圧することを目的としています。私のシミュレーションでは、インダクタの値が最大30%変動することを許容し、15回の実行を行います。この大きな変動は、一部のワイヤーワウンドインダクタやフェライトで見られるもので、このような大きな変動を使用することで、リップルやオーバーシュートの極端な値がどのようになるかを確認できます。
インダクタが変動する部品である別の理由は、コンバータが連続伝導モードで動作しているときに、出力リップルの主要な決定要因であるからです。さらに一歩進んで、最悪の電気的挙動を本当に確認する必要がある場合は、インダクタ電流自体を見て、インダクタ電流が連続伝導にどれだけ近づくかを確認することもできます。
初期結果の一部で、コンポーネント値の30%の変動を与えたときの過渡応答を以下に示します。このウィンドウから、コンバーターはすでに、インダクタの値に応じて8.37Vから8.56Vの範囲でオーバーシュートを示していることがわかります。下側の輪郭(緑色、L1 = 91.9 uH、L2 = 6.16 uH)と上側の輪郭(紫色、L1 = 122uH、L2 = 7.64 uH)の値は、以下のグラフにマークされています。
各曲線は、ランダムに生成された一組のインダクタ値に対応しています。結果から、インダクタの変動の影響が明らかに見て取れます:
出力リップルが非常に低いままであるという事実は、他のすべてのパラメータの小さな変動を仮定しても、この設計により一貫したリップルの出力を期待できることを意味し、励みになります。
出力インダクタンスの方程式を見ずに、出力インダクタンスの±30%の変化が出力インダクタンスに同様に大きな変動を生じさせると自然に想定するかもしれません。しかし、連続伝導モードで動作するバックコンバータの出力電流の電圧波形リップルの方程式を見ると、このようなことがない理由がわかります:
インダクタンス値が分母にあるため、これらの変動の影響は減少します。これは、公称インダクタ値についての摂動を取り、リップル感度がインダクタンスの任意の変動に比例する方法を見ることで確認できます:
これらの変動の影響は、インダクタの値によって減少します。言い換えると、大きなインダクタに対する30%の許容誤差は、小さなインダクタにおける同じ30%の許容誤差よりも出力リップルの変化をはるかに少なくします。この振る舞いは、ある電気的値(この場合は電流)が問題のコンポーネント値に非線形に関連している場合に典型的です。
さらに、出力フィルタ(L2 + C2)の3 dBロールオフ周波数は、Q1を変調するPWM周波数よりも既に低くなっています。このフィルタセクションの3 dBロールオフは名目上41.1 kHzであり、リップル周波数は100 kHzのPWM周波数と一致します。リップルは既に大幅にフィルタリングされるため、ロールオフ周波数の変動が出力リップルに与える影響はそれほど大きくありません。
モンテカルロ解析を行う場合、コンポーネント値のランダムな変動による回路の挙動の限界を本当に理解するために、統計分析を行う必要があるかもしれません。下のグラフでは、上記の過渡解析結果を取り、オーバーシュートによるオンフェーズ中に発生する最大電圧を抽出しました。平均値と標準偏差を計算して、インダクタンス値の変動の影響を定量化しました。
過渡解析結果をCSVまたは他のデータ形式でエクスポートするには、Altium Designerのメインメニューから「File → Export → Plot」コマンドを使用します。その後、Excel、MATLAB、Mathematica、または他のデータ分析プログラムにデータをインポートできます。
収集したデータと上記の統計値を使用して信頼区間を構築すると、これらの回路の95%は、8.375Vから8.605Vの範囲でオーバーシュートを示すことになります。さらに分析、例えば最悪ケース分析を行いたい場合は、これらの極端な値のいずれかを使用して回路の挙動を理解することができます。
統計的に信頼性を評価するためには、はるかに多くのシミュレーションを実行して、多くのデータポイントを見ることになるでしょう。データが多ければ、抽出した測定値からヒストグラムを作成し、これを使用して回路の挙動を定義する確率分布を得ることができます。そして、これらの値を使用して、回路が完全に受け入れられない領域(信頼区間の極端な値を超える)で動作する確率を決定することができます。
ちょっとした楽しみとして、この分析で実行されたシミュレーションの数を100回に増やしました。100回の繰り返しでの過渡結果は以下に示されます。これらの曲線から、オンフェーズ中の最大オーバーシュート電圧を再び抽出することができます。
Excelに結果をエクスポートすると、以下に示すようなヒストグラムを作成するのに十分なデータが得られます。重ねられたオレンジ色の曲線は、ビン化されたデータから決定された累積関数を示しており、現在のビン以下にデータの何パーセントがあるかを示し、この回路の予想される動作範囲の尺度として使用できます。
ここでのポイントは、回路性能がコンポーネントの許容差を考慮してどのように変動するかを、迅速かつ簡単に確認できる方法を持っていることです。結果が仕様や安全余裕内にない場合は、PCBレイアウトを作成し、プロトタイプを組み立てる前に回路を修正する必要があります。
回路内でモンテカルロシミュレーションを実行することに興味がある場合、外部のシミュレーションパッケージや特化した分析ソフトウェアは必要ありません。Altium Designer®のスキーマティックエディタ内で、回路を評価し信頼性シミュレーションを実行するために必要なすべてが見つかります。PCBを完成させ、設計を共同作業者や製造業者と共有する準備ができたら、Altium 365™プラットフォームを通じて完成した設計を共有できます。高度な電子機器を設計し生産するために必要なすべてが、1つのソフトウェアパッケージ内にあります。
私たちは、Altium 365上でAltium Designerを使用して可能なことの表面をかすめただけです。今日、Altium Designer + Altium 365の無料トライアルを始めてください。