Accurate time delay in FMCW radar simulation using radarTransceiver.

12 次查看(过去 30 天)
Recently, I tried to follow the official radar simulation tutorial to explore the problem of radar delay estimation. But I found that there is a difference between the delayed signal simulated by radarTransceiver and the analytical delayed signal.
After carefully looking at the internal implementation of radarTransceiver, it seems to be caused by radarTransceiver using Fractional Delay FIR Filters to achieve signal delay.
I can understand that this implementation method is more general. But if the signal analysis formula is known (such as a clear FMCW signal and delay), is there any other more accurate implementation method?
Any help or clarification is greatly appreciated. Thanks.
  2 个评论
Jingqi
Jingqi 2024-2-27
编辑:Jingqi 2024-2-27
Code for delayed signal in analytical form. [Neglecting amplitude losses and phase errors between antennas]
%% test reflection signal (checked ?)
distance = vpaths.PathLength;
tau = distance / c;
number = floor(tm * fs);
zero_pending_num = floor(tau*fs);
t = (0:number-1)'*tm/number;
test_sig = exp(1i * (pi * (sweepSlope)* (t-tau).^2 -1* delta_phi));
test_sig = [zeros(zero_pending_num,1); test_sig(zero_pending_num + 1:end)];
Jingqi
Jingqi 2024-2-28
Fractional Delay FIR Filters in radarTransceiver is the code in PathChannel.m line 707
% Compute fractional delay
nDelay = propdelay*Fs;
isDelayIntSamples = (rem(propdelay,1/Fs) == 0);
nDelay(isDelayIntSamples) = round(nDelay(isDelayIntSamples));
fDelay = nDelay-fix(nDelay);
fDelay_candidate = reshape(repmat(fDelay,ncol_per_path,1),1,[]);
nDelay_candidate = reshape(repmat(fix(nDelay),ncol_per_path,1),1,[]); %integer samples
% Use linear fractional delay, as in
% dsp.VariationalFractionalDelay
for m = 1:size(tempxp_candidate,2)
tempxp_candidate(:,m) = ...
tempxp_candidate(:,m)*(1-fDelay_candidate(m))+...
[0;tempxp_candidate(1:end-1,m)]*fDelay_candidate(m);
end

请先登录,再进行评论。

回答(1 个)

Pratyush
Pratyush 2024-7-16
Hi Jinqi,
To achieve a more accurate signal delay for known signal forms like FMCW, you can use a direct analytical approach rather than Fractional Delay FIR Filters. Below is an overview of how to implement this :
Analytical Signal Delay Implementation
Define Constants and Parameters:
- Speed of light
- Sampling frequency
- Sweep time
- Sweep slope
- Phase offset
Calculate Delay:
- Compute the time delay based on the distance.
- Determine the number of zero-padded samples.
Generate Time Vector:
- Create a time vector for the signal.
Generate Signals:
- Generate the transmitted FMCW signal.
- Generate the delayed FMCW signal analytically by adjusting the time vector.
Apply Zero-Padding:
- Apply zero-padding to simulate the delay.
Plot Signals:
- Plot the original and delayed signals for visual comparison.
This approach directly adjusts the time vector to account for the delay, providing a more accurate representation of the delayed signal for known signal forms like FMCW.

类别

Help CenterFile Exchange 中查找有关 Detection, Range and Doppler Estimation 的更多信息

产品


版本

R2023b

Community Treasure Hunt

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

Start Hunting!

Translated by