Triangular wave form Up and Down sweep problem??

5 views (last 30 days)
I am trying to dechirp a triangular up and down sweep of transmitted and recievedsignal with no doppler, ideally i should get only one beat frequency same for Up sweep and Down sweep, but i am getting two beat frequencies, i dont know why, i think its problem with the dechirp command, I am attaching my code also, help me find the problem,
clear,close all, clc
fc=77e9;
fs= 150000000 ;
tm = 0.002;
bw = 150000000 ;
c=3e8;
slope = bw/tm;
lambda = c/fc;
hwav = phased.FMCWWaveform('SweepTime',tm,'SweepBandwidth',bw,...
'SampleRate',fs,'SweepDirection','Triangle' , 'NumSweeps',2)
xt = step(hwav);
sampletime=1/hwav.SampleRate;
tau = 8e4;
delay = tau*sampletime;
supposed_range = delay*c/2
xr = [zeros(tau,1); xt(1:end-tau)];
y = dechirp(xr,xt);
hspec = dsp.SpectrumAnalyzer('SampleRate',hwav.SampleRate,'TwoSidedSpectrum',true ,...
'Title','Spectrum for received and dechirped signal',...
'LegendSource','Auto');
step(hspec,[y])
figure
spectrogram(xt,32,16,32,fs,'yaxis')
hold on
spectrogram(xr,32,16,32,fs,'yaxis')
hold on
spectrogram(y,32,16,32,fs,'yaxis')
fb_rng = rootmusic(pulsint(y,'coherent'),1,hwav.SampleRate)
range = beat2range(fb_rng,slope)

Accepted Answer

Honglei Chen
Honglei Chen on 10 Mar 2013
The beat frequency computed from upsweep and downsweep are meant to be different. It is that difference help you resolve the range Doppler ambiguity. You can change the last two lines to
fb_rng = rootmusic(pulsint(y,'coherent'),2,hwav.SampleRate)
range = beat2range(fb_rng.',slope)
The result will be matching the expected value.
HTH

More Answers (1)

REEM ALI
REEM ALI on 31 Jan 2014
please can you help me to find beat frequency from sweep of triangular

Community Treasure Hunt

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

Start Hunting!