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

2 visualizaciones (últimos 30 días)
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?

Respuesta aceptada

Star Strider
Star Strider el 23 de Oct. de 2021
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).
.

Más respuestas (0)

Productos


Versión

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by