Azzera filtri
Azzera filtri

simulinkを離散時間で計算したい

9 visualizzazioni (ultimi 30 giorni)
fractal
fractal il 8 Dic 2018
Commentato: fractal il 11 Dic 2018
ソース信号にローパスをフィルタをかけてオーディオ出力として出力したいのですが、できません。
Audio System SourceのFromMultimediaFileを入力、出力にAudio Device Writeをしています。
その間にsimscapeのElectrical Elementsで作ったローパスフィルタを挟んでいます。
これで実行した場合AudioDeviceの入力が連続時間なっているため、実行することができません。
モデルの離散化というのも試したのですが、エラーがでてできませんでした。
どのように直したらいいでしょうか
エラー内容
Error in 'audio_test/Audio Device Writer': The block input must have a discrete sample time.

Risposta accettata

Naoya
Naoya il 10 Dic 2018
Audio Device Writerブロックは エラーメッセージの通り、離散時間信号のみを受け付けます。
そのため、下記キャプチャ例のように、 Zero-order Hold ブロックで適当なサンプリング時間(例えば 1/8000 sec)を挿入して、離散信号としてください。
また、Audio Device Writerブロックで再生する場合、信号を一旦 バッファしないと再生が処理に追従できない場合があります。併せて、 Bufferブロック (DSP System Toolbox > Signal Management > Buffers > Bufferブロック) を挿入してみてください。 (Bufferブロックのバッファサイズはこちらも適宜設定します。例:256 サンプル)
capture.png
  2 Commenti
fractal
fractal il 11 Dic 2018
Naoya様
ご回答ありがとうございます。
ご指摘いただいた通りの構成にしたところ正常にAudioDeviceからSin波を出力することに成功しました。
ありがとうございます
fractal
fractal il 11 Dic 2018
Naoya様の助言を基にソースがオーディオファイルの場合でも成功しました。
図のような構成にしてサンプル時間を適切な値で統一したら出来ました。
ありがとうございました。
スクリーンショット 2018-12-11 13.15.35.jpg

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su 基礎となるドメイン in Help Center e File Exchange

Prodotti


Release

R2018b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!