Radar IQ Data FFT/STFT Spectogram Problem
Hello,
I have data which is taken from FMCW radar. Radar specs are as in below:
Center Frequency 77GHz
Bandwidth 160MHz
Range Resolution 1m
PRF 17kHz
Azimuth Beamwidth 1
Scan Rate 10Hz,
mechanical Field of View 9
Output Power 10mW
I use FFT and STFT functions for spectogram plotting. However, it’s seems wrong for me. I want to ask about the usage of those functions. My usage of those functions as in below;
STFT:
window_size = 128;
overlap_length = 120;
fft_points= 256;
window = hamming(window_size);
[S, F, T] = stft(IQ, 1280, ‘Window’, window, ‘OverlapLength’, overlap_length, ‘FFTLength’, fft_points);
new_data_Set_STFT{index_onearray,2} = F; %Frequency
% Amplitude of Spectogram
new_data_Set_STFT{index_onearray,3} =mean(abs(S’));
% IQ data phase
new_data_Set_STFT{index_onearray,4} = atan(imag(S)/real(S));
FFT:
% IQ DATA FFT
new_data_Set{index_onearray,2} = fft(IQ(:,index_global));
% Frequency length
N = length(IQ(:,index_global)); % FFT length
fs = 256; % sampling frequency
calculation = (0:N-1)*(fs/N);
f1 = reshape(calculation, 1280, …
1);
new_data_Set{index_onearray,3} = f1; % Frequency vector
% Amplitude of Spectogram
new_data_Set{index_onearray,4} = abs(IQ(:,index_global));
% IQ data phase
new_data_Set{index_onearray,5} = angle(IQ(:,index_global));
After Plotting, STFT spektogram looks like this. In frequency and time(x time, y frequency) scale it looks wrong. What’s wrong with my code?
FFT:
Thanks for help.Hello,
I have data which is taken from FMCW radar. Radar specs are as in below:
Center Frequency 77GHz
Bandwidth 160MHz
Range Resolution 1m
PRF 17kHz
Azimuth Beamwidth 1
Scan Rate 10Hz,
mechanical Field of View 9
Output Power 10mW
I use FFT and STFT functions for spectogram plotting. However, it’s seems wrong for me. I want to ask about the usage of those functions. My usage of those functions as in below;
STFT:
window_size = 128;
overlap_length = 120;
fft_points= 256;
window = hamming(window_size);
[S, F, T] = stft(IQ, 1280, ‘Window’, window, ‘OverlapLength’, overlap_length, ‘FFTLength’, fft_points);
new_data_Set_STFT{index_onearray,2} = F; %Frequency
% Amplitude of Spectogram
new_data_Set_STFT{index_onearray,3} =mean(abs(S’));
% IQ data phase
new_data_Set_STFT{index_onearray,4} = atan(imag(S)/real(S));
FFT:
% IQ DATA FFT
new_data_Set{index_onearray,2} = fft(IQ(:,index_global));
% Frequency length
N = length(IQ(:,index_global)); % FFT length
fs = 256; % sampling frequency
calculation = (0:N-1)*(fs/N);
f1 = reshape(calculation, 1280, …
1);
new_data_Set{index_onearray,3} = f1; % Frequency vector
% Amplitude of Spectogram
new_data_Set{index_onearray,4} = abs(IQ(:,index_global));
% IQ data phase
new_data_Set{index_onearray,5} = angle(IQ(:,index_global));
After Plotting, STFT spektogram looks like this. In frequency and time(x time, y frequency) scale it looks wrong. What’s wrong with my code?
FFT:
Thanks for help. Hello,
I have data which is taken from FMCW radar. Radar specs are as in below:
Center Frequency 77GHz
Bandwidth 160MHz
Range Resolution 1m
PRF 17kHz
Azimuth Beamwidth 1
Scan Rate 10Hz,
mechanical Field of View 9
Output Power 10mW
I use FFT and STFT functions for spectogram plotting. However, it’s seems wrong for me. I want to ask about the usage of those functions. My usage of those functions as in below;
STFT:
window_size = 128;
overlap_length = 120;
fft_points= 256;
window = hamming(window_size);
[S, F, T] = stft(IQ, 1280, ‘Window’, window, ‘OverlapLength’, overlap_length, ‘FFTLength’, fft_points);
new_data_Set_STFT{index_onearray,2} = F; %Frequency
% Amplitude of Spectogram
new_data_Set_STFT{index_onearray,3} =mean(abs(S’));
% IQ data phase
new_data_Set_STFT{index_onearray,4} = atan(imag(S)/real(S));
FFT:
% IQ DATA FFT
new_data_Set{index_onearray,2} = fft(IQ(:,index_global));
% Frequency length
N = length(IQ(:,index_global)); % FFT length
fs = 256; % sampling frequency
calculation = (0:N-1)*(fs/N);
f1 = reshape(calculation, 1280, …
1);
new_data_Set{index_onearray,3} = f1; % Frequency vector
% Amplitude of Spectogram
new_data_Set{index_onearray,4} = abs(IQ(:,index_global));
% IQ data phase
new_data_Set{index_onearray,5} = angle(IQ(:,index_global));
After Plotting, STFT spektogram looks like this. In frequency and time(x time, y frequency) scale it looks wrong. What’s wrong with my code?
FFT:
Thanks for help. radar, signal processing, spectogram, fft, stft, fmcw, plotting, iq data MATLAB Answers — New Questions