目录
chirp函数的功能是提供扫频的正余弦波形。
语法
y = chirp(t,f0,t1,f1)
y = chirp(t,f0,t1,f1,method)
y = chirp(t,f0,t1,f1,method,phi)
y = chirp(t,f0,t1,f1,'quadratic',phi,shape)
y = chirp(___,cplx)
说明
y = chirp(t,f0,t1,f1)在阵列t中定义的时刻产生线性扫频余弦信号的样本,时刻0的瞬时频率为f0,时刻t1的瞬时频率为f1。
y = chirp(t,f0,t1,f1,method)指定替代扫描方法选项。
y = chirp(t,f0,t1,f1,method,phi)指定初始相位。
y = chirp(t,f0,t1,f1,'quadratic',phi,shape)指定二次扫频信号的频谱图的形状。
y = chirp(___,cplx)如果将cplx指定为“实数”则返回实数chirp,如果将cplx指定为“复数”则返回复数chirp。
示例
线性扫频
产生具有线性瞬时频率偏移的chirp。chirp在1 kHz下采样2秒钟。瞬时频率在t = 0时为0,在t = 1秒时超过250 Hz。
t = 0:1/1e3:2;
y = chirp(t,0,1,250);
计算并绘制chirp声谱图。将信号分成若干段,使时间分辨率为0.1秒。指定相邻段之间99%的重叠,光谱泄漏为0.85。
pspectrum(y,1e3,'spectrogram','TimeResolution',0.1, ...
'OverlapPercent',99,'Leakage',0.85)
如图所示:
二次扫频
产生具有二次瞬时频率偏差chirp。chirp在1 kHz下采样2秒钟。瞬时频率在t = 0时为100 Hz,在t = 1秒时超过200 Hz。
t = 0:1/1e3:2;
y = chirp(t,100,1,200,'quadratic');
计算并绘制chirp声谱图。将信号分成若干段,使时间分辨率为0.1秒。指定相邻段之间99%的重叠,光谱泄漏为0.85。
pspectrum(y,1e3,'spectrogram','TimeResolution',0.1, ...
'OverlapPercent',99,'Leakage',0.85)
如图所示:
凸二次扫频
产生一个以1 kHz采样2秒钟的凸二次chirp。瞬时频率在t = 0时为400 Hz,在t = 1秒时超过300 Hz。
t = 0:1/1e3:2;
fo = 400;
f1 = 300;
y = chirp(t,fo,1,f1,'quadratic',[],'convex');
计算并绘制chirp声谱图。将信号分成若干段,使时间分辨率为0.1秒。指定相邻段之间99%的重叠,光谱泄漏为0.85。
pspectrum(y,1e3,'spectrogram','TimeResolution',0.1, ...
'OverlapPercent',99,'Leakage',0.85)
如图所示:
对称凹二次扫频
产生一个1 kHz采样的凹二次chirp,持续4秒。指定时间向量,使瞬时频率关于采样间隔的中点对称,最小频率为100 Hz,最大频率为500 Hz。
t = -2:1/1e3:2;
fo = 100;
f1 = 200;
y = chirp(t,fo,1,f1,'quadratic',[],'concave');
计算并绘制chirp声谱图。将信号分成若干段,使时间分辨率为0.1秒。指定相邻段之间99%的重叠,光谱泄漏为0.85。
pspectrum(y,t,'spectrogram','TimeResolution',0.1, ...
'OverlapPercent',99,'Leakage',0.85)
如图所示:
对数扫频
产生10秒钟1 kHz采样的对数chirp。瞬时频率最初为10 Hz,最后为400 Hz。
t = 0:1/1e3:10;
fo = 10;
f1 = 400;
y = chirp(t,fo,10,f1,'logarithmic');
计算并绘制chirp声谱图。将信号分成几段,使时间分辨率为0.2秒。指定相邻段之间99%的重叠,光谱泄漏为0.85。
pspectrum(y,t,'spectrogram','TimeResolution',0.2, ...
'OverlapPercent',99,'Leakage',0.85)
如图所示:
使用对数标度表示频率轴。声谱图变成了一条线,在低频时具有很高的不确定性。
ax = gca;
ax.YScale = 'log';
如图所示:
复合扫频
产生10秒钟的1 kHz采样复数线性chirp。瞬时频率最初为–200Hz,最终为300 Hz。初始相位为零。
t = 0:1/1e3:10;
fo = -200;
f1 = 300;
y = chirp(t,fo,t(end),f1,'linear',0,'complex');
计算并绘制chirp声谱图。将信号分成几段,使时间分辨率为0.2秒。指定相邻段之间99%的重叠,光谱泄漏为0.85。
pspectrum(y,t,'spectrogram','TimeResolution',0.2, ...
'OverlapPercent',99,'Leakage',0.85)
如图所示:
验证复chirp的实部和虚部相等,但相差90° 相位差。
x = chirp(t,fo,t(end),f1,'linear',0) + 1j*chirp(t,fo,t(end),f1,'linear',-90);
pspectrum(x,t,'spectrogram','TimeResolution',0.2, ...
'OverlapPercent',99,'Leakage',0.85)
如图所示: