LTspice、Transient解析で得られた波形の平均値と積分値

LTspice

以前、LTspiceで抵抗の消費電力の求め方を記事にしました。

電圧・電流が直流であれば良いのですが、パルス波形のような交流の場合で、消費電力の平均値を求めたい場合はどうしたら良いか調べてみました。

結論としては、ctrlキーを押しながら、Transient解析で得られた波形のラベルをクリックすることで、平均値と積分値が表示されることがわかりました。

スポンサーリンク

直流の電力値とノード名の変更方法

以前の記事と同じ内容になってしまいますが、直流の場合をおさらいしておきます。

以下の回路でシミュレーションします。

1Vの直流電源に、1Ωの抵抗を接続しています。

ですので、この抵抗R1の消費電力は1Wです。

これをシミュレーションで確認しますが、その前にノード名を変更したいと思います。

上の回路で、直流電源の+側と抵抗R1を結ぶノードの名前はV(n001)です。

これだとわかりづらいので、Vpに変更したいと思います。

変更方法は、まずLabel Netアイコンをクリックします。

以下のウインドウが表示されたら、テキストボックスにVpと入力します。

OKボタンをクリックしたら、直流電源の+側とR1を結ぶノードに接続します。

すると、ノード名がVpに変更され、Vpと表示が出ます。

ノード名が変更できたので、電力値のシミュレーションに戻ります。

シミュレーションは、Transient解析で、1ms間でシミュレーションします。

シミュレーション設定を終わらせ、実行すると、結果のウインドウが表示されます。

このウインドウが表示されたら右クリックし、Add Tracesを選択します。

以下のウインドウが表示されたら、Expression(s) to add:のテキストボックスに、抵抗R1の消費電力を求める式を入力します。

消費電力は、抵抗R1の両端電圧と電流の積になります。

両端電圧は、先ほどノード名をVpに変更したので、V(vp)になります。(ノード名は小文字に変わってしまうようです)

抵抗R1に流れる電流は、I(R1)です。

ですので、テキストボックスに入力する式は、V(vp) * I(R1)になります。

そしたら、OKボタンをクリックします。

期待通りの1Wのシミュレーション結果が得られました。

直流の電力値の平均値と積分値

それでは、電力値の波形を使って、平均値と積分値を求めてみます。

ちなみに、平均値は時間平均、積分値は電力値を時間で積分したものです。

求め方は簡単で、ctrlキーを押しながら、波形のラベル(以下の画像の赤枠内、緑文字)をクリックします。

すると、以下のウインドウが表示されます。

Average(平均値)とIntegral(積分値)が表示されました。

平均値は、1W固定で、時間変化はないので、そのまま1Wです。

積分値は、消費電力を時間で積分しているので、V(vp) * I(R1) * timeの結果で、ジュール熱を示しています。

なので、単位がJ(ジュール)になっています。

上のシミュレーション結果では、1Wの消費電力が1ms続いているので、1W * 1ms = 1mJになっています。

こんな感じで、簡単に平均値と積分値を求めることができました。

しかし、直流でやってもあまり面白くないので、パルス波形でもやってみたいと思います。

パルス波形の電力値の平均値と積分値

先ほどは、1V出力の直流電圧源を使っていましたが、パルス出力の設定に変更します。

電源の設定値は以下です。

電源は、0V⇔1Vのパルスで、周期は0.2ms、ON Dutyが50%の設定です。

電源以外の設定は、先ほどと同じです。

これでシミュレーションを実行します。

下図がシミュレーション結果で、上から電圧、電流、消費電力を示しています。

電源が1V出力している時は、1Aの電流が流れて、抵抗で1W消費されています。

電源が0V出力している時は、電流が流れないので、抵抗での電力消費はないです。

では、この消費電力のシミュレーション波形で、平均値と積分値を求めてみます。

Averageが500mW、Integralが500uJとなりました。

ON Dutyを50%に設定したので、直流の時の半分の値になりました。

こんな感じで、簡単に平均値と積分値が求められることがわかりました。

今までは、一度テキストファイルに出力し、エクセルで計算を行っていましたが、だいぶ無駄な作業をやっちゃってました。(波形データのテキストファイルへの出力方法はこちら

余談:ジュールを波形に表示

シミュレーション結果に表示させる波形を選択する時、以下のウインドウ(Add Traces to Plot)が表示されます。

このウインドウのAvailable data:の中にある信号をクリックすると、その波形が表示されますが、この中にtimeという信号があります(図中の赤枠内)。

これって何だろう?と思い、波形を表示させてみました。

その結果がこちら。

単純にx軸の時間が、そのままy軸に表示されるだけでした。

でも、これを使えばジュール熱も波形に表示できるかもと思い、試してみました。

まず、1V出力の直流電源を使った場合です。

表示させる波形は、V(vp) * I(R1) * timeです。

この場合のシミュレーション結果です。

まず、縦軸ですが、単位がJ(ジュール)に変わりました。

そして、波形ですが、時間経過とともにジュール熱が増加し、1ms後のジュール熱は1mJであることがわかります。

次に、0V⇔1Vのパルス出力、ON Duty 50%の電源の場合です。

電源から1Vが出力されている時は、ジュール熱は時間とともに増加し、0V出力の時は0mJです。

こんな感じで、ジュール熱を波形に表示させることができましたが、あまり面白い結果ではありませんでした。

今のところ、timeのあまり上手な利用方法が思いつきません。。。

ちなみに、この波形で、ctrlキーを押しながら波形ラベルをクリックしてみます。

Averageは表示されましたが、Integralは表示されませんでした。

これはジュール熱を時間で積分しても、物理的な意味がないから???ということでしょうか。

まとめ

LTspiceには、まだ知らない、便利な機能がありそうです。

タイトルとURLをコピーしました