Sim's blog

電子工作はじめてみました

LTspiceでwaveファイルを読む

2008-03-07 01:01:15 | 電子工作
LTspiceでwaveファイルを作るの続きです。

LTspiceのデモのwavein.ascにwaveファイルを読み込む方法があります。


voltageという部品のVと書かれているところ右クリックして編集します。+から.wavの中身が出てきます。
部品を右クリックしたときに出るDCの所にいれても入力できますが再編集がなぜかできません。編集したいときはwavefile=...となっているあたりを右クリックして編集します。

この例ではvm11.wavというファイルを読み込んでいます。PC-9801VM11という機種の起動音です。このファイルは「PC-98のブート音比較!」というページからもらってきました。VM11以外にも色々な型番の起動音をコレクションされています。今となってはとても貴重ですね。

シミュレートした結果です。


前半がピ(約125ミリ秒)で後半がポ(約107ミリ秒)です。

前半をFFTしました。

ほぼ2kHzが支配的です。

LTspiceではFFTしたい部分を拡大してから、Use current zoom ExtentにチェックをいれてFFTすることで表示している部分だけをFFTすることができます。

後半部分のFFTです。

1kHzと3kHzが支配的です。

想像するに元々は2kHzの矩形波と1kHzの矩形波だったのが、矩形波だと出るはずの奇数倍の高調波がいないということはローパスフィルターがかかっているのではないかと思いました。.wavファイルを作るときに高調波が切られてしまった可能性もあります。PC-9801のスピーカーにローパスフィルターが実際についていたのかもしれません。そのあたりは分かりません。

↑の波形を参考に.wavファイルを作ってみました。


前半(125ミリ秒)は2kHzの矩形波、後半(107ミリ秒)は1kHzの矩形波で、CRのローパスフィルタを通して出力しています。フィルタの定数はいいかげんに決めました。

一応、フィルタの特性も調べてみます。


こんな感じに作って、シミュレートすると次のようになります。

右下がりなのでローパスフィルタになっています。
720Hzくらいで-3dBになっています。フィルタかかりすぎかな。もっと抵抗を減らさないといけませんね。1/√2倍が-3dBで-3dBになる周波数をカットオフ周波数と言うみたいです。
抵抗を390Ωにするとカットオフ周波数が4kHzになります。

なんか、ここまでやるとマイコンで鳴らしてみたくなりますね。