シミュレーションエンジン
ソルバについて
一般的にソルバとは、さまざまな方程式などを解くための解法、アルゴリズムを指します。
特に電気回路シミュレータでは、回路内の電圧源、電流源、抵抗、インダクタンス、キャパシタンスなどから成る回路図に対して作成した回路方程式を解くために利用されます。
Scideamのソルバ
Scideamのソルバは、崇城大学(熊本、日本)名誉教授、株式会社スマートエナジー研究所の技術顧問である中原正俊氏によって1990年頃から開発されてきました。
本ソルバは、スイッチング動作を解くために最適化された可変ステップソルバを採用しており、収束性が高く、高精度と高速性を両立させていることが特徴であり、他シミュレータのソルバとは一線を画す、オリジナルのソルバです。
項目 | 特徴 |
---|---|
数値積分法 | 台形法(スイッチング周波数に最適化) |
回路定式化 | 状態変数解析法 |
計算刻み | 可変 |
ソルバパラメータ設定 | モデルから自動的に設定 |
速度の特徴
スイッチング電源は、スイッチやダイオードのオン・オフ状態が急峻に変化するため、急激な変化に対して非常に細かい計算刻みで演算を行う必要があります。一方、他区間では変化が少なく刻み時間を大きく取ることが可能です。
Scideamの最適化された可変ステップソルバでは、このようなシステムの動的挙動に対して、刻み時間を自動的に調整し、計算回数を大幅に減らすことで高速性を達成しています。
精度の特徴
スイッチングコンバータの特性を精度よく解析するためには、例えばダイオードのオン、オフの切り替わりタイミングを適切に判定できる必要があります。最適化された可変ステップソルバでは、このタイミングを刻み幅の変更と繰り返し演算によって高い精度で求め、スイッチング特性の解析精度を向上させています。。
また微小なLC共振などの解析においても、自動で計算刻み幅が細かくなることにより、共振回路、部分共振回路、サージの解析などにも威力を発揮します。
自動パラメータ設定の特徴
一般的に、可変ステップソルバを使用するためにはソルバ用のパラメータ設定が必要であり、これが可変ステップソルバの利用を難しくしています。Scideamでは、このソルバ用パラメータを独自のアルゴリズムにより、ユーザーが作成するモデルに合わせて自動的に設定します。これにより、ユーザーは特に意識をすることなく、常に最適な解析結果を得ることができます。
解析結果に対してさらに詳細に解析を行いたい場合は、解析条件を変更することでソルバ用パラメータを調整することが可能です。
アナログとデジタルの混在解析
Scideamのソルバは回路に対しては可変ステップ解析を行いますが、プログラム部分などをはじめとする離散系の演算部分についてはメイン周波数などで設定される固定周波数で実行されます。これにより、デジタル制御電源などの解析を可能にします。
他社シミュレータと設定方法の違い
Scideamでは、他社製シミュレータと違い、ソルバ設定をほとんど意識することなくシミュレーションを行うことが可能です。
Scideamで最も重要な周波数設定項目である、メイン周波数は、他社製シミュレータの計算刻み幅の設定に似ていますが、まったく違った役割を持ちます。
例えばScideamでは、スイッチング周波数が100kHzであれば、メイン周波数に100kHzと入力することで設定は完了します。固定ステップを採用している他シミュレータのように演算刻み幅を10MHzなどに設定する必要はありません。
詳しくはメイン周波数のページをご覧ください。
Transient解析とwaveform解析
Scideamの時系列解析方法には、Transient解析とWaveform解析という二つの解析方法があります。
主な違いは波形表示の方法であり、計算過程、ソルバ、刻み幅は変わりません。
詳しくはTransient解析のページを参照してください。
解析条件の設定
Scideamソルバは、ソルバ用パラメータ設定アルゴリズムにより、ユーザーが作成するモデルに合わせてソルバ用パラメータを自動的に設定するため、通常は特に意識する必要はありません。通常よりも精度を上げて解析を行いたい場合、以下の項目を変更することで、精度に関する条件を設定することが可能です。
解析条件は コンフィグエディタ
の Analysis Conditions
から設定します。
ソルバオプションの設定
名称 | 内容 |
---|---|
Nta |
減衰波形に対する刻み時間を制御します。 この値が増加するほど解析精度が良くなりますが、解析時間は長くなります。 減衰波形が正しくないときは、1~100の範囲で増加してください。 |
Ntw |
正弦波形に対する刻み時間を制御します。 この値が増加するほど解析精度が良くなりますが、解析時間は長くなります。 振幅波形が正しくないときは、100~1000で増加してください。 |
Fta |
刻み時間の繰り返し時間を制御します。 この値が増加するほど解析精度が良くなりますが、解析時間は長くなります。 パルス波形が正しくないときは10~20で増加してください。 |
Nprf |
詳細損失解析時の長いステップ(スイッチング動作以外の解析)時間を調節します。 この値が増加するほど解析精度が良くなりますが、解析時間は長くなります。 10~100の範囲で増加してください。 |
Nmdl |
細損失解析時の短いステップ(ターンオンとターンオフ特性を解析する)時間を調節します。 この値が増加するほど解析精度が良くなりますが、解析時間は長くなります。 50~5000の範囲で増加してください。 |
Nrss | ミラー効果領域を調整します。 この値が増加するほどミラー効果領域が広くなります。 10~100の範囲で調整してください。 |
Note
上記のパラメーターは通常変更する必要がありません。
デフォルト値よりも減少させるのは推奨できません
周期制御素子の実行順序
サイディームには多くの周期制御素子があり、メイン周期の開始時に制御動作する場合と、メイン周期またはサブ周期の終了時に動作する場合があります。
それぞれの場合において制御に関係した素子が複数存在する時の制御順序は以下となります。
なお、メイン周期とはメイン周波数の逆数であり、サブ周期とはサブ周波数の逆数を意味します。
メイン周期における実行順序
開始時
- プログラマブル電圧源が更新
- POSTがチェックされていないスクリプトが更新
終了時
- 演算器素子が機能し演算器素子の出力が更新
- POSTがチェックされているスクリプトが更新
- SLCスクリプトが更新
- 3.までに決定された状態において、SFM素子の入力電圧が計算され、それに基づいてメイン周波数が更新
- 4.までに決定された状態において、PWM素子の入力電圧が計算され、それによって変調される状態変化時刻が更新 このとき、時比率制御を行っている場合の時比率の計算には、4.までに決定されたメイン周期を使用
- 5.までに決定された状態において、DPM素子の入力電圧が計算され、それによって変調される素子パラメーター値が更新
- 6.までに決定された状態において、スイッチング同期制御によって設定される状態変化時刻が更新
サブ周期における実行順序
開始時
- 特になし
終了時
- POSTがチェックされているスクリプトが更新
- SLCスクリプトが更新
- 2.までに決定された状態において、SFM素子の入力電圧が計算され、それに基づいてサブ周波数が更新
- 3.までに決定された状態において、PWM素子の入力電圧が計算され、それによって変調される状態変化時刻が更新 のとき、時比率制御を行っている場合の時比率の計算には34.までに決定されたサブ周期を使用
- 4.までに決定された状態において、DPM素子の入力電圧が計算され、それによって変調される素子パラメーター値が更新
- 5.までに決定された状態において、スイッチング同期制御によって設定される状態変化時刻が更新
メイン周期とサブ周期の同時刻制御順序
メイン周期とサブ周期の終了時刻が同じ場合(例えばメイン周波数100kHz、サブ周波数50kHzなど)は、サブ周期終了時刻で実行される制御が先で、メイン周期終了時刻で実行される制御が後になります。
同種類の素子の同時刻制御順序
複数のスクリプトが同じ時刻で実行される場合の制御順序は下記となります。
基本的に優先度が高い(値が小さい)順番に実行されます。
初めにサブ周波数が設定されているスクリプトが優先度に従って実行され、その後、メイン周波数が設定されているスクリプトが優先度に従って実行されます。
Note
同一の優先度が設定されているスクリプトの実行順序は不定となります。