exponenta event banner

Одновременная оценка дальности и скорости с использованием сигнала MFSK

В этом примере сравниваются сигналы с частотно-модулированной разверткой треугольника (FMCW) и сигналы с многократной частотной манипуляцией (MFSK), используемые для одновременной оценки дальности и скорости для нескольких целей. Сигнал MFSK специально разработан для автомобильных радиолокационных систем, используемых в современных системах помощи водителю (ADAS). Она особенно привлекательна в сценариях с несколькими целевыми объектами, поскольку не вводит цели-призраки.

Форма сигнала FMCW развертки треугольника

В примере автомобильный адаптивный круиз-контроль с использованием технологии FMCW, автомобильная радиолокационная система предназначена для выполнения оценки дальности для автоматической системы круиз-контроля. В последней части этого примера для одновременной оценки дальности и скорости целевого транспортного средства используется сигнал FMCW со сдвигом треугольника.

Хотя сигнал FMCW развертки треугольника решает проблему связи диапазон-доплеровский элегантно для одной цели, его обработка усложняется в ситуациях с несколькими целями. В следующем разделе показано поведение сигнала FMCW со сдвигом треугольника при наличии двух целей.

Место происшествия включает в себя автомобиль в 50 метрах от радара, следовавший со скоростью 96 км/ч по тому же направлению, что и радар, и грузовик на расстоянии 55 метров, следовавший со скоростью 70 км/ч в обратном направлении. Сам радар движется со скоростью 60 км/ч.

rng(2015);

[fmcwwaveform,target,tgtmotion,channel,transmitter,receiver,...
    sensormotion,c,fc,lambda,fs,maxbeatfreq] = helperMFSKSystemSetup;

Затем смоделируйте радиолокационное эхо от двух машин. Форма сигнала FMCW имеет ширину полосы пропускания 150 МГц, поэтому разрешение диапазона составляет 1 метр. Каждый сдвиг вверх или вниз занимает 1 миллисекунду, поэтому каждый сдвиг треугольника занимает 2 миллисекунды. Следует отметить, что для оценки дальности и скорости соединения требуется только один треугольник.

Nsweep = 2;
xr = helperFMCWSimulate(Nsweep,fmcwwaveform,sensormotion,tgtmotion,...
    transmitter,channel,target,receiver);

Хотя системе требуется полоса пропускания 150 МГц, максимальная частота биений значительно меньше. Это означает, что на стороне обработки можно прореживать сигнал до более низкой частоты, чтобы облегчить требования к аппаратным средствам. Частоты биений затем оцениваются с использованием прореженного сигнала.

dfactor = ceil(fs/maxbeatfreq)/2;
fs_d = fs/dfactor;
fbu_rng = rootmusic(decimate(xr(:,1),dfactor),2,fs_d);
fbd_rng = rootmusic(decimate(xr(:,2),dfactor),2,fs_d);

Теперь есть две частоты биений от свипа вверх и две частоты биений от свипов вниз. Поскольку любая пара частот биений от развертки вверх и развертки вниз может определять цель, существуют четыре возможные комбинации дальности и доплеровских оценок, но только две из них связаны с реальными целями.

sweep_slope = fmcwwaveform.SweepBandwidth/fmcwwaveform.SweepTime;
rng_est = beat2range([fbu_rng fbd_rng;fbu_rng flipud(fbd_rng)],...
    sweep_slope,c)
rng_est = 4×1

   49.9765
   54.9088
   64.2963
   40.5891

Остальные два - это то, что часто называют целями-призраками. Взаимосвязь между реальными целями и целями-призраками можно лучше объяснить с помощью частотно-временного представления.

Как показано на рисунке, каждое пересечение возврата сдвига вверх и возврата сдвига вниз указывает возможную цель. Поэтому важно различать истинные цели и цели-призраки. Для решения этой неоднозначности можно передавать дополнительные FMCW-сигналы с различными наклонами свипа. Так как только истинные цели будут занимать одно и то же пересечение во временной частотной области, неоднозначность разрешена. Однако этот подход значительно увеличивает сложность обработки, а также время обработки, необходимое для получения достоверных оценок.

Форма сигнала MFSK

Форма сигнала [1] многочастотной манипуляции (МФСК) предназначена для обеспечения одновременной оценки дальности и доплеровской оценки при множестве целей без попадания в ловушку целей-призраков. Его частотно-временное представление показано на следующем рисунке.

Рисунок показывает, что сигнал MFSK представляет собой комбинацию двух линейных сигналов FMCW с фиксированным сдвигом частоты. В отличие от обычных форм сигналов FMCW, MFSK сдвигает всю полосу пропускания на дискретных шагах. На каждом этапе передается один частотный непрерывный волновой сигнал. Поскольку в каждом шаге имеется два тона, его можно рассматривать как форму сигнала с частотной манипуляцией (FSK). Таким образом, имеется один набор диапазона и доплеровского отношения от формы сигнала FMCW и другой набор диапазона и доплеровского отношения от FSK. Объединение двух наборов соотношений вместе может помочь разрешить связь между дальностью и доплеровской величиной независимо от количества целей, присутствующих в сцене.

В следующих разделах снова моделируется предыдущий пример, но вместо него используется сигнал MFSK.

Сквозное моделирование радиолокационной системы с использованием сигнала MFSK

Сначала параметризуйте форму сигнала MFSK в соответствии с требованиями системы, указанными в [1]. Поскольку разрешение диапазона равно 1 метру, полоса пропускания развертки устанавливается на 150 МГц. Кроме того, смещение частоты устанавливается равным -294 кГц, как указано в [1]. Каждый шаг длится около 2 микросекунд, и весь сдвиг имеет 1024 шага. Таким образом, каждый свип FMCW занимает 512 шагов, и общее время свип-сигнала немного превышает 2 мс. Обратите внимание, что время свип-сигнала сравнимо с сигналом FMCW, используемым в предыдущих разделах.

mfskwaveform = phased.MFSKWaveform(...
    'SampleRate',151e6,...
    'SweepBandwidth',150e6,...
    'StepTime',2e-6,...
    'StepsPerSweep',1024,...
    'FrequencyOffset',-294e3,...
    'OutputFormat','Sweeps',...
    'NumSweeps',1);

На рисунке ниже показана спектрограмма формы сигнала. Он увеличен до небольшого интервала, чтобы лучше раскрыть частотно-временные характеристики сигнала.

numsamp_step = round(mfskwaveform.SampleRate*mfskwaveform.StepTime);
sig_display = mfskwaveform();
spectrogram(sig_display(1:8192),kaiser(3*numsamp_step,100),...
    ceil(2*numsamp_step),linspace(0,4e6,2048),mfskwaveform.SampleRate,...
    'yaxis','reassigned','minthreshold',-60)

Figure contains an axes. The axes contains an object of type image.

Затем смоделируйте возврат системы. Опять же, для оценки диапазона и доплеровского диапазона необходим только 1 свип.

Nsweep = 1;
release(channel);
channel.SampleRate = mfskwaveform.SampleRate;
release(receiver);
receiver.SampleRate = mfskwaveform.SampleRate;

xr = helperFMCWSimulate(Nsweep,mfskwaveform,sensormotion,tgtmotion,...
    transmitter,channel,target,receiver);

Последующая обработка производит выборку обратного эхо-сигнала в конце каждого этапа и группирует дискретизированные сигналы в две последовательности, соответствующие двум свипам. Следует отметить, что частота дискретизации результирующей последовательности теперь пропорциональна времени на каждом этапе, что значительно меньше по сравнению с исходной частотой дискретизации.

x_dechirp = reshape(xr(numsamp_step:numsamp_step:end),2,[]).';
fs_dechirp = 1/(2*mfskwaveform.StepTime);

Как и в случае сигналов FMCW, сигнал MFSK обрабатывается в частотной области. На следующих чертежах показаны частотные спектры принятых эхо-сигналов, соответствующих двум передачам.

xf_dechirp = fft(x_dechirp);
num_xf_samp = size(xf_dechirp,1);
beatfreq_vec = (0:num_xf_samp-1).'/num_xf_samp*fs_dechirp;

clf;
subplot(211),plot(beatfreq_vec/1e3,abs(xf_dechirp(:,1)));grid on;
ylabel('Magnitude');
title('Frequency spectrum for sweep 1');
subplot(212),plot(beatfreq_vec/1e3,abs(xf_dechirp(:,2)));grid on;
ylabel('Magnitude');
title('Frequency spectrum for sweep 2');
xlabel('Frequency (kHz)')

Figure contains 2 axes. Axes 1 with title Frequency spectrum for sweep 1 contains an object of type line. Axes 2 with title Frequency spectrum for sweep 2 contains an object of type line.

Следует отметить, что в каждом частотном спектре имеется два пика, указывающих на две цели. Кроме того, пики находятся в одинаковых местоположениях в обоих возвращениях, так что нет целей-призраков.

Для обнаружения пиков можно использовать детектор CFAR. После обнаружения частоты биений, а также разности фаз между двумя спектрами вычисляются в местоположениях пиков.

cfar = phased.CFARDetector('ProbabilityFalseAlarm',1e-2,...
    'NumTrainingCells',8);

peakidx = cfar(abs(xf_dechirp(:,1)),1:num_xf_samp);

Fbeat = beatfreq_vec(peakidx);
phi = angle(xf_dechirp(peakidx,2))-angle(xf_dechirp(peakidx,1));

Наконец, частоты биений и разности фаз используются для оценки диапазона и скорости. В зависимости от того, как строится разность фаз, уравнения немного отличаются. Для подхода, показанного в этом примере, можно показать, что диапазон и скорость удовлетворяют следующему соотношению:

fb = -2vλ + 2βRc

Δstart= -4πTsvλ + 4πfoffsetRc

где fb - частота биений, Δλ - разность фаз, λ - длина волны, c - скорость распространения, Ts - время шага, foffset - сдвиг частоты, β - наклон развертки, R - диапазон, v - скорость. Исходя из уравнения, дальность и скорость оцениваются ниже:

sweep_slope = mfskwaveform.SweepBandwidth/...
    (mfskwaveform.StepsPerSweep*mfskwaveform.StepTime);
temp = ...
    [1 sweep_slope;mfskwaveform.StepTime mfskwaveform.FrequencyOffset]\...
    [Fbeat phi/(2*pi)].';

r_est = c*temp(2,:)/2
r_est = 1×2

   54.8564   49.6452

v_est = lambda*temp(1,:)/(-2)
v_est = 1×2

   36.0089   -9.8495

Расчетный диапазон и скорость очень хорошо соответствуют истинным значениям диапазона и скорости, как показано в таблице ниже.

  • Вагон: r = 50 м, v = -10 м/с

  • Грузовик: r = 55 м, v = 36 м/с

Резюме

Этот пример показывает два одновременных подхода к оценке дальности и скорости, используя либо треугольный сигнал свип FMCW, либо сигнал MFSK. Показано, что форма сигнала MFSK имеет преимущество по сравнению с формой сигнала FMCW, когда присутствует несколько целевых объектов, так как она не вводит призрачные целевые объекты во время обработки.

Ссылки

[1] Rohling, H. и М. Мейнек. Принцип проектирования формы сигнала для автомобильных радиолокационных систем, материалы Международной конференции КИПиИ по радиолокационным системам, 2001 год.