Q6 LTspiceのシミュレーション結果をWAVEファイルに出力する
 オーディオ・アンプのシミュレーションで出力端子にスピーカのspiceモデルをつなぎ、実際に音をパソコンから出力、または記録できる音声信号を取り出すことは可能でしょうか。オーディオ関係のどなたかのサイトでシミュレーション・モデルから出る音のファイルが掲載されていて、クリックすると音が再生されるのを見たことがあります。ご教示宜しくお願いいたします。<labyrinth>


A6 
WAVEファイル
 LTspiceにはWaveファイルを書き出すためのコマンド.WAVEが用意されています。回路の任意の場所のシミュレーション結果をWaveファイルとして保存できます。

書式: .wave <filename.wav> <Nbits> <SampleRate> V(out) [V(out2) ...]


  filename.wav:ファイル名はWaveファイルのエクステントのwav。パスは絶対パスまたはネット・リストが格納されているディレクトリからの相対パス。
  Nbits : サンプリング・ビット数で1~32ビット。 
  SampleRate : 1秒間当たりのサンプリング数 1から65535。 
  V(out) [V(out2) ...] : 保存する回路図のノードを示す。1から最大65535まで示す。


一般的なステレオの音声出力を設定する場合次のようになります。

   .WAVE Filename.wav 16 44.1k V(right) V(left)


 詳細はLTspiceのHelpを起動して「.WAVE」を検索すると詳しい説明があります。
 このファイルの再生は、たいていの音声再生プログラムで行えます。

スピーカのSPICEモデル
 WAVEファイルを再生して音を聞くことを目的にする場合なら、スピーカのモデルはインピーダンスに対応する抵抗を用いることで対応できます。スピーカのモデルを超低音域や高音域の状態をシミュレートしたとしても、再生するスピーカの特性も同じでなく音声データを再現する目的を明確にしないと対応方法が決まりません。できれば目的をもう少し詳しく教えてください。

 

 

Q7 オーディオ信号をLTspiceで利用する
 オーディオ・アンプのAC小信号シミュレーション用の入力信号に、音楽などの音声信号(ディジタル・ファイル)を使用する方法はないでしょうか?<labyrinth>


A7 
 LTspiceでは、エクステント(拡張子)がwavのWaveファイルと呼ばれる音声データを入力信号のデータとして利用できます。電圧源、voltageで利用する場合、次に示すように電圧源voltageの出力電圧が表示されているところを右クリックし、電圧の設定欄にwavefile=filename.wav chan=0 ...と記述します。

 

 filenameは絶対パスまたは相対パスでファイルの存在するフォルダ(ディレクトリ)も含めて指定します。chan=0はステレオの左チャネル、chan=1の場合は右チャネルです。
 オーディオ回路のテストに、実際の音声データを用いてシミュレーションを行うこともできます。「LTspice入門シミュレーション結果を保存しその結果を利用する」の連載でWaveファイルの取り扱い方法確認を行いますので、そちらも参考にしてください。

<神崎康宏>

Q8 Wave の再生、保存

 ステレオ音声のwavファイルを入力し、回路を通したシミュレート結果をwavファイルにステレオで記録しようとしています。 入力を wavfile=<filename> chan=0 chan=1とすると認識しますが(ただし出力は片方だけ?)、解説にあります .wave <filename>.wav 16 44.1k v(right) v(left)では認識しません。

 また、記録も.wave <filename>.wav 16 44.1k v(out)は認識しますが、解説にあります .wave <filename>.wav 16  44.1k v(right) v(left)では認識しません。 一つの回路に左右二つの信号を同時に入れて、左右二つのシミュレート信号を同時に記録することはできないのでしょうか。ご教示宜しくお願いいたします。<labyrinth>

A8

(1) Waveファイルの利用は、次に示すように電圧源や電流源にWaveファイルに保存されているチャネルのデータを一つ割り当てます。通常のステレオ信号の場合、チャネル0が左チャネル、チャネル1が右チャネルとして保存されています。各電圧源は一つの信号しか発生できないので、次に示すように割り当てるチャネルは一つだけにします。通常のステレオ・データの場合は、0と1をそれぞれの回路に入力信号のデバイスに割り当てます。


(2) 次の「一つの回路に左右二つの信号を同時に入れて、左右二つのシミュレート信号を同時に記録することはできないのでしょうか。」については、ステレオの再生には右用、左用の二つのアンプが用意され、二つの入力回路と二つの出力回路を持ったものがワンセットとなります。ステレオで保存された記録を二つの電圧源にセットしてワンセットのステレオのそれぞれの入力信号を供給し、それぞれのアンプの出力を同時にシミュレートし比較できます。
 これで、対応できると思いますが、不明な点がありましたら再度お問い合わせください。その際具体的な回路図と認識できる、認識できない、の具体的な事象をお知らせいただけると助かります。

 蛇足ですが、LTspiceXVII のHelpの.WAVEの解説に音声データのサンプルとして次の例があります。 .wave <filename>.wav 16  44.1k v(right) v(left)このwaveファイルをLTspiceで利用するときは、チャネル0を右、チャネル1を左と割り当てて、問題なく利用できます。
 ほかの再生プログラムで利用する場合は、左、右、左、右・・・の順番で格納されているので、チャネル0に左、チャネル1に右を割り当てたほうが無難です。