秋月ファンクラブ掲示板 過去ログ
LTSPICE 1secごとのデータのmaxをさいようする命令 - kurin
2014/03/01 (Sat) 14:52
LTSPICEで1sec前のデータと比較して大きいほうを採用してこれを繰り返す命令を教
えてください。
Re: LTSPICE 1secごとのデータのmaxをさいようする命令 - inara1
2014/03/01 (Sat) 15:37
1秒前の信号を作るには、tlineという伝送線路の遅延時間Tdを1とすればいいで
す。入力(左側)に信号を入れると、出力(右側)には遅延信号が出てきます。
tlineの特性インピーダンス(ZO)と同じ抵抗値の抵抗(R1)で終端すれば、tlineの
入出力信号の波形は、時間がTdだけずれていること以外は同じになります。
添付図では、ビヘイビア電圧源B1を使って、tlineの入出力波形(V(a)とV(b))を比
較して、大きいほうの電圧を出力するようにしています。
1秒遅らせた信号(V(b))と他の信号を比較して大きいほうを出力するときは、
V=max(V(b),他の信号)とすればいいです。
Re: LTSPICE 1secごとのデータのmaxをさいようする命令 - kurin
2014/03/01 (Sat) 22:40
返信ありがとうございます。
tlineを使うのは初めてです。
参考になりました。
Re: LTSPICE 1secごとのデータのmaxをさいようする命令 - inara1
2014/03/02 (Sun) 05:38
tlineを使わなくてもできます。
ビヘイビア電圧源で使える関数にabsdelayというのがあります。これは遅延信号を
作るもので
absdelay(遅延させたい信号,遅延時間,[最大遅延])
という書式になります。
添付図の例では、a点の電圧を1秒遅延させたabs(V(a),1)と、a点の電圧V(a)とを比
較して、大きいほうを出力するものです。結果はtlineを使ったものと同じです。
Re: LTSPICE 1secごとのデータのmaxをさいようする命令 - kurin
2014/03/02 (Sun) 13:15
最大値検出したいのですが、
添付ファイルはそうなりません。
電圧の最大値は正確ですが、電力は最大値にならない理由は何でしょうか?
Re: LTSPICE 1secごとのデータのmaxをさいようする命令 - inara1
2014/03/02 (Sun) 14:02
i(r1)が負の値になっていませんか。i(r1)が負になっていると、v(1)*i(r1)が負に
なってしまいます。
シミュレーション終了後にマウスカーソルをR1に合わせたとき、電流の向きを示す
赤い矢印が上向きになっていませんか。
赤い矢印が上向きなら、その方向の電流が正なので、下向きに流れる電流は負にな
ります。赤い矢印が上向きなら、抵抗の配置を上下逆にすれば、電流の符号を反転
させることができます。
Re: LTSPICE 1secごとのデータのmaxをさいようする命令 - kurin
2014/03/02 (Sun) 15:01
負になっていないんですよ。
正の電力値を検出しているので間違いないと思うのですが、
peak検出になっていないです。少し差があります。
なぜだか???
Re: LTSPICE 1secごとのデータのmaxをさいようする命令 - inara1
2014/03/02 (Sun) 17:17
この回路
(http://bbs3.fc2.com//bbs/img/_454800/454703/full/454703_1393733744.png)
の信号源V2は、10VのDC電圧に重畳した2Vpp、1Hzのサイン波ですが、その信号はい
つも同じピーク値なので、最初のピークを過ぎたらv(max)は一定値のままとなるは
ずです(シミュレーション結果は正しい)。
ピークホールド機能を見たいのなら、添付図のB2のように、ピーク電圧が順次大き
くなっていくような波形で見たほうがいいと思います。
Re: LTSPICE 1secごとのデータのmaxをさいようする命令 - kurin
2014/03/02 (Sun) 21:14
すいません。
私のシミュレーショングラフの読み違いでした。
結果は間違っていません。
大変失礼しました。