はじめに
ドラゴンクエストのテリーのワンダーランドでは、
スライム+5♂ と スライム+5♀
を配合するとキングスライムができます。
これと同様に、チャープ信号♂とチャープ信号♀を畳み込み積分するとインパルス波形になります。
「えっ??なんでー?」って疑問に思った方はおそらく、チャープ信号(サインスイープ信号やTSPとも呼ぶ)というものを理解していませんし、逆FFTや畳み込み積分についても理解できていません。
本記事では、チャープ信号の理解が不足していそうな点だけざっくりと説明します。
チャープ信号とチャープ信号の畳み込み
MATLABによる検証
下図のようにチャープ信号(スイープ①とスイープ②)を畳み込み積分すると、インパルス応答になっていることがわかりますね。
MATLABのコード
clear all;close all
fs=1024*8*4;
t=0:1/fs:1;
% t=t(1:fs);
y1 = chirp(t,10,1,10000,'linear', -90);
y2=y1(end:-1:1);
figure
subplot(211)
plot(t,y1)
subplot(212)
plot(t,y2)
sig=conv(y1,y2);
figure
plot(sig)
figure
subplot(141)
spectrogram(y1,1024,1024/2,1024,fs)
view([90 -90])
caxis([-70 -20])
title('スイープ①')
subplot(142)
spectrogram(y2,1024,1024/2,1024,fs)
view([90 -90])
caxis([-70 -20])
title('スイープ②')
subplot(1,4,3:4)
spectrogram(sig,1024,1024/2,1024,fs)
view([90 -90])
caxis([-30 10])
title('①②の畳み込み積分')
チャープ信号の考え方
みなさんチャープ信号はご存じかと思います。下図のような、時々刻々と周波数が変化する正弦波のような信号ですね。
この信号をFFTしてみます。
ただ、上記信号の1s付近の拡大図を先に紹介しておきます。
上図に示すように1s付近がきれいに0になってませんね。。。。なので、FFTすると変なノイズがのってしまいますが、ご了承ください。
FFTの結果が下記です。
今回のチャープ信号はfs=4096で、下記のように作成しています。
y1 = chirp(t,10,1,1000,'linear', -90); Y1=fft(y1,fs);
従って、周波数成分は10~1000Hzしか存在しません。
FFTの結果からわかることは、10~1000Hzで振幅がフラットであることです。
もう少しわかりやすく説明するために、200Hzまでの拡大図を示します。
振幅が(ほぼ)フラットで、位相が線形的に遅れていることがわかりますね。そのため、インパルス信号に位相成分を持たせて、時間軸上に引き延ばした信号がチャープ信号という考え方ができますね。
今日はここらへんで、やめておきます。
後日もう少しディープな世界の話をしたいと思います。
  
  
  
  





コメント