How can I get a time versus amplitude graph from the waveform.

8 次查看(过去 30 天)
I have used the following code to get a FMCW sweep for ThZ range.
sFMCW = phased.FMCWWaveform('SweepBandwidth',192e12,...
'SweepTime',1e-9,...
'SampleRate',384e12,'SweepDirection','Triangle',...
'NumSweeps',2);
sig = step(sFMCW);
windowlength = 32;
noverlap = 16;
nfft = 32;
spectrogram(sig,windowlength,noverlap,nfft,sFMCW.SampleRate,'yaxis')
And got the following graph.
How can I get time versus amplitude of the following graph?

采纳的回答

Star Strider
Star Strider 2021-10-23
The spectrogram function returns amplitude (the ‘z’ axis of the rotated surf plot) in units of dB/Hz, so it will not produce the amplitude results that the fft function would return.
Instead, use the pspectrum function with the 'spectrogram' option, that will return the amplitude uints (again the ‘z’ axis of the rotated surf plot) of the original signal.
Compare the two funcitons with the same signal to see the difference in the results. Both of them provide the ability to get the data directly from the outputs without having to recover them from the surf plot (although that is always an option).
.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Antennas, Microphones, and Sonar Transducers 的更多信息

产品


版本

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by