Этот пример иллюстрирует, как использовать функцию неоднозначности, чтобы анализировать формы волны. Это сравнивает область значений и Доплеровскую возможность нескольких основных форм волны, например, прямоугольной формы волны и линейной и ступенчатой формы волны FM.
В радиолокационной системе выбор радарной формы волны играет важную роль в том, чтобы позволять систему разделить две тесно расположенных цели, или в области значений или в скорости. Поэтому часто необходимо исследовать форму волны и понять ее разрешение и неоднозначность и в области значений и в областях скорости. В радаре область значений измеряется с помощью задержки, и скорость измеряется с помощью эффекта Доплера. Таким образом область значений и скорость используются наравне с задержкой и Доплером.
Чтобы улучшить сигнал до шумового отношения (ОСШ), современные радиолокационные системы часто используют согласованный фильтр в цепочке получателя. Функция неоднозначности формы волны представляет точно вывод согласованного фильтра, когда заданная форма волны используется в качестве входа фильтра. Это точное представление делает функцию неоднозначности популярным инструментом для разработки и анализа форм волны. Этот подход обеспечивает понимание разрешающей способности и в задержке и в Доплеровских областях для данной формы волны. На основе этого анализа можно затем определить, подходит ли форма волны для конкретного приложения.
Следующие разделы используют функцию неоднозначности, чтобы исследовать отношение Доплера области значений для нескольких популярных форм волны. Чтобы установить базовую линию сравнения, примите, что спецификация проекта радиолокационной системы требует максимальной однозначной области значений 15 км и разрешения области значений 1,5 км. Ради простоты также используйте 3e8 м/с в качестве скорости света.
Rmax = 15e3; Rres = 1500; c = 3e8;
На основе спецификаций проекта, уже упомянутых, импульсная частота повторения (PRF) и пропускная способность формы волны могут быть вычислены можно следующим образом.
prf = c/(2*Rmax); bw = c/(2*Rres);
Выберите частоту дискретизации, которая имеет дважды пропускную способность.
fs = 2*bw;
Самая простая форма волны для радиолокационной системы является, вероятно, прямоугольной формой волны, иногда также называемой одной формой волны частоты. Для прямоугольной формы волны ширина импульса является обратной величиной пропускной способности.
Прямоугольная форма волны может быть создана можно следующим образом.
rectwaveform = phased.RectangularWaveform('SampleRate',fs,... 'PRF',prf,'PulseWidth',1/bw)
rectwaveform = phased.RectangularWaveform with properties: SampleRate: 200000 DurationSpecification: 'Pulse width' PulseWidth: 1.0000e-05 PRF: 10000 PRFSelectionInputPort: false OutputFormat: 'Pulses' NumPulses: 1 PRFOutputPort: false
Поскольку анализ формы волны всегда выполняется на полных импульсах, сохраните свойство OutputFormat как 'Импульсы'. Можно также проверять пропускную способность формы волны с помощью метода пропускной способности.
bw_rect = bandwidth(rectwaveform)
bw_rect = 1.0000e+05
Получившаяся пропускная способность совпадает с требованием. Теперь, сгенерируйте один импульс формы волны, и затем исследуйте его с помощью функции неоднозначности.
wav = rectwaveform(); ambgfun(wav,rectwaveform.SampleRate,rectwaveform.PRF);
В фигуре заметьте, что ненулевой ответ занимает только приблизительно 10% всех задержек, фокусируясь в узкой полосе вокруг задержки 0. Это происходит, потому что форма волны имеет рабочий цикл 0,1.
dc_rect = dutycycle(rectwaveform.PulseWidth,rectwaveform.PRF)
dc_rect = 0.1000
Когда исследование разрешающей способности формы волны, сокращения нулевой задержки и нуля Доплеровское сокращение функции неоднозначности формы волны часто представляет интерес.
Нуль Доплеровское сокращение функции неоднозначности возвращает автокорреляционную функцию (ACF) прямоугольной формы волны. Сокращение может быть построено с помощью следующей команды.
ambgfun(wav,rectwaveform.SampleRate,rectwaveform.PRF,'Cut','Doppler');
Нулевое Доплеровское сокращение функции неоднозначности изображает ответ согласованного фильтра цели, когда цель является стационарной. Из графика каждый видит, что первый пустой ответ появляется в 10 микросекунд, что означает, что эта форма волны могла разрешить две цели, которые составляют по крайней мере 10 микросекунд, или на расстоянии в 1,5 км. Следовательно, ответ совпадает с требованием в спецификации проекта.
Сокращение нулевой задержки может быть построено с помощью подобного синтаксиса.
ambgfun(wav,rectwaveform.SampleRate,rectwaveform.PRF,'Cut','Delay');
Заметьте, что возвращенный ответ нулевой задержки довольно широк. Первый пустой указатель не появляется до в ребре, которое соответствует эффекту Доплера 100 кГц. Таким образом, если две цели в той же области значений, у них должно быть различие 100 кГц в Доплеровской области, которая будет разделена. Принятие радара работает на уровне 1 ГГц, согласно вычислению ниже, такое разделение соответствует различию в скорости 30 км/с. Поскольку этот номер является настолько большим, по существу нельзя разделить две цели в Доплеровской области, использующей эту систему.
fc = 1e9; deltav_rect = dop2speed(100e3,c/fc)
deltav_rect = 30000
В этой точке может стоить, чтобы упомянуть другую проблему с прямоугольной формой волны. Для прямоугольной формы волны разрешение области значений определяется шириной импульса. Таким образом, чтобы достигнуть хорошего разрешения области значений, система должна принять очень маленькую ширину импульса. В то же время система также должна смочь отослать достаточно энергии в пробел так, чтобы возвращенное эхо могло быть надежно обнаружено. Следовательно, узкая ширина импульса требует очень высокой пиковой мощности в передатчике. На практике производство такой энергии может быть очень дорогостоящим.
Каждый видит от предыдущего раздела, что Доплеровское разрешение для одного меандра довольно плохо. На самом деле Доплеровское разрешение для одного меандра дано обратной величиной его ширины импульса. Вспомните, что разрешение задержки прямоугольной формы волны дано ее шириной импульса. По-видимому, там существует конфликт интересов между областью значений и Доплеровскими разрешениями прямоугольной формы волны.
Основная проблема здесь - то, что и задержка и Доплеровское разрешение зависят от ширины импульса противоположными способами. Поэтому один способ решить эту проблему состоит в том, чтобы подойти форма волны, которая разъединяет эту зависимость. Можно затем улучшить разрешение в обеих областях одновременно.
Линейная форма волны FM является только такой формой волны. Разрешение области значений линейной формы волны FM больше не в зависимости от ширины импульса. Вместо этого разрешение области значений определяется пропускной способностью развертки.
В линейной форме волны FM, потому что разрешение области значений теперь определяется пропускной способностью развертки, система может предоставить более длинную ширину импульса. Следовательно, требование к питанию облегчено. Между тем, из-за более длинной ширины импульса, Доплеровское разрешение улучшается. Это улучшение происходит даже при том, что Доплеровское разрешение линейной формы волны FM все еще дано обратной величиной ширины импульса.
Теперь, исследуйте линейную форму волны FM подробно. Линейная форма волны FM, которая обеспечивает желаемое разрешение области значений, может быть создана можно следующим образом.
lfmwaveform = phased.LinearFMWaveform('SampleRate',fs,... 'SweepBandwidth',bw,'PRF',prf,'PulseWidth',5/bw)
lfmwaveform = phased.LinearFMWaveform with properties: SampleRate: 200000 DurationSpecification: 'Pulse width' PulseWidth: 5.0000e-05 PRF: 10000 PRFSelectionInputPort: false SweepBandwidth: 100000 SweepDirection: 'Up' SweepInterval: 'Positive' Envelope: 'Rectangular' OutputFormat: 'Pulses' NumPulses: 1 PRFOutputPort: false
Ширина импульса в 5 раз более длинна, чем та из прямоугольной формы волны, используемой в более ранних разделах этого примера. Заметьте, что пропускная способность линейной формы волны FM совпадает с прямоугольной формой волны.
bw_lfm = bandwidth(lfmwaveform)
bw_lfm = 100000
Нуль Доплеровское сокращение линейной формы волны FM появляется в следующем графике.
wav = lfmwaveform(); ambgfun(wav,lfmwaveform.SampleRate,lfmwaveform.PRF,'Cut','Doppler');
От предыдущей фигуры каждый видит, что даже при том, что ответ теперь имеет боковые лепестки, первый пустой указатель все еще появляется в 10 микросекунд, таким образом, разрешение области значений сохраняется.
Можно также построить сокращение нулевой задержки линейной формы волны FM. Заметьте, что первый пустой указатель в Доплеровской области теперь на уровне приблизительно 20 кГц, который является 1/5 исходной прямоугольной формы волны.
ambgfun(wav,lfmwaveform.SampleRate,lfmwaveform.PRF,'Cut','Delay');
Выполняя ту же процедуру что касается прямоугольной формы волны в более ранних разделах этого примера, можно вычислить, что 20 кГц Доплеровское разделение переводят в различие в скорости 6 км/с. Это разрешение в 5 раз лучше, чем прямоугольная форма волны. К сожалению, такое разрешение является все еще несоответствующим.
deltav_lfm = dop2speed(20e3,c/fc)
deltav_lfm = 6000
Можно также интересоваться наблюдением 3-D графика функции неоднозначности для линейной формы волны FM. Если вы хотите видеть 3-D график кроме формата контура, можно только получить возвращенную функцию неоднозначности и затем построить, использует любимый формат. Например, следующий отрывок генерирует объемную поверхностную диаграмму линейной функции неоднозначности формы волны FM.
[afmag_lfm,delay_lfm,doppler_lfm] = ambgfun(wav,lfmwaveform.SampleRate,... lfmwaveform.PRF); surf(delay_lfm*1e6,doppler_lfm/1e3,afmag_lfm,'LineStyle','none'); axis tight; grid on; view([140,35]); colorbar; xlabel('Delay \tau (us)');ylabel('Doppler f_d (kHz)'); title('Linear FM Pulse Waveform Ambiguity Function');
Заметьте, что по сравнению с функцией неоднозначности прямоугольной формы волны, функция неоднозначности линейной формы волны FM немного наклоняется. Наклон обеспечивает улучшенное разрешение в сокращении нулевой задержки. Функция неоднозначности и прямоугольной формы волны и линейной формы волны FM имеет форму длинного, узкого ребра. Этот вид функции неоднозначности часто называют как функция неоднозначности "острого края".
Прежде, чем продолжить улучшать далее Доплеровское разрешение, стоит посмотреть на важный показатель качества, используемый в анализе формы волны. Продукт ширины импульса и пропускная способность формы волны называются продуктом пропускной способности времени формы волны. Для прямоугольной формы волны продукт пропускной способности времени всегда равняется 1. Для линейной формы волны FM, из-за разъединения пропускной способности и ширины импульса, пропускная способность времени может быть больше, чем 1. Форма волны, только используемая, имеет продукт пропускной способности времени 5. Вспомните, что путем сохранения того же разрешения области значений как прямоугольная форма волны, линейная форма волны FM достигает Доплеровского разрешения, которое в 5 раз лучше.
С предыдущего раздела Доплеровское разрешение линейной формы волны FM все еще довольно плохо. Один способ улучшить это разрешение состоит в том, чтобы далее расширить ширину импульса. Однако этот подход не будет работать по двум причинам:
Рабочий цикл формы волны уже - 50%, который является близко к практическому пределу. (Даже если можно было бы, скажем, использовать 100%-й рабочий цикл, это - все еще только фактор 2 улучшений, которые далеки от способности решить вопрос.)
Более длинная ширина импульса означает большую минимальную обнаруживаемую область значений, которая является также нежелательным.
Если нельзя расширить ширину импульса в одном импульсе, нужно на время забыть этот контур. Действительно, в современных радиолокационных системах, Доплер, обрабатывающий часто, использует когерентный импульсный train. Чем больше импульсов в импульсном train, тем более прекрасный Доплеровское разрешение.
Чтобы проиллюстрировать идею, затем, пробуют пакет с пятью импульсами.
release(lfmwaveform); lfmwaveform.NumPulses = 5; wav = lfmwaveform();
Во-первых, постройте нуль Доплеровское сокращение функции неоднозначности.
ambgfun(wav,lfmwaveform.SampleRate,lfmwaveform.PRF,'Cut','Doppler');
Заметьте, что для нуля Доплер сократил, первый пустой указатель является все еще приблизительно 10 микросекундами, таким образом, разрешение области значений является тем же самым. Нужно сразу видеть присутствие многих боковых лепестков области области значений. Эти боковые лепестки являются компромиссом для использования импульсного train. Расстояние между mainlobe и первым боковым лепестком является длиной одного целого импульса, т.е. обратной величиной PRF. Как каждый видит, это значение соответствует максимальной однозначной области значений.
T_max = 1/prf
T_max = 1.0000e-04
Сокращение нулевой задержки также имеет боковые лепестки из-за импульсного train. Расстоянием между mainlobe и первым боковым лепестком является PRF. Таким образом этим значением является максимальный однозначный Доплер, которого может обнаружить радиолокационная система. Можно также вычислить соответствующую максимальную однозначную скорость.
ambgfun(wav,lfmwaveform.SampleRate,lfmwaveform.PRF,'Cut','Delay');
V_max = dop2speed(lfmwaveform.PRF,c/fc)
V_max = 3000
Однако заметьте, что mainlobe теперь намного более резок. Тщательное изучение показывает, что первый пустой указатель на уровне приблизительно 2 кГц. Это Доплеровское разрешение может на самом деле быть получено следующим уравнением,
deltaf_train = lfmwaveform.PRF/5
deltaf_train = 2000
т.е. разрешение теперь определяется длиной нашего целого импульсного train, не шириной импульса одного импульса. Соответствующее разрешение скорости теперь
deltav_train = dop2speed(deltaf_train,c/fc)
deltav_train = 600
который значительно лучше. Что еще более важно, чтобы получить еще более прекрасное разрешение скорости, можно просто увеличить число импульсов, включенных в импульсный train. Конечно, количество импульсов, которые можно иметь в пакете, зависит от того, можно ли сохранить когерентность на целое время, но то обсуждение вне осциллографа этого примера.
Можно заметить, что в сокращении нулевой задержки, расстояние между peaks является более не постоянным, специально для дальше боковых лепестков. Это отсутствие постоянства происходит, потому что линейная функция неоднозначности формы волны FM наклоняется. Следовательно, оценка разделения боковых лепестков в сокращении нулевой задержки может вводить в заблуждение. Неоднозначность, вызванная импульсным train, вероятно, лучше всего просматривается в очерченной форме, когда следующий пример кода показывает. Заметьте, что вдоль ребра функции неоднозначности, те боковые лепестки действительно равномерно расположены с интервалами.
ambgfun(wav,lfmwaveform.SampleRate,lfmwaveform.PRF);
Из-за всех боковых лепестков этот вид функции неоднозначности является вызванной функцией неоднозначности трудной ситуации.
Линейная форма волны FM очень широко используется в радиолокационных системах. Однако это действительно представляет собой некоторые проблемы к оборудованию. С одной стороны, оборудование должно смочь развернуть целый частотный диапазон в одном импульсе. Используя эту форму волны также делает его тяжелее, чтобы создать получатель, потому что это должно разместить целую пропускную способность.
Чтобы избежать этих проблем, можно использовать ступенчатую форму волны FM вместо этого. Ступенчатая форма волны FM состоит из нескольких непрерывных импульсов CW. Каждый импульс имеет различную частоту и вместе, все импульсы занимают целую пропускную способность. Следовательно, в импульсе больше нет развертки, и получатель только должен разместить пропускную способность, которая является обратной величиной ширины импульса одного импульса.
Затем, настройте такую ступенчатую форму волны FM.
stepfmwaveform = phased.SteppedFMWaveform('SampleRate', fs,... 'PulseWidth',5/bw,'PRF',prf,'NumSteps',5,'FrequencyStep',bw/5,... 'NumPulses',5)
stepfmwaveform = phased.SteppedFMWaveform with properties: SampleRate: 200000 DurationSpecification: 'Pulse width' PulseWidth: 5.0000e-05 PRF: 10000 PRFSelectionInputPort: false FrequencyStep: 20000 NumSteps: 5 OutputFormat: 'Pulses' NumPulses: 5 PRFOutputPort: false
wav = stepfmwaveform();
Нуль, который Доплер сократил, сокращение нулевой задержки и контурный график функции неоднозначности, показывают ниже.
ambgfun(wav,stepfmwaveform.SampleRate,stepfmwaveform.PRF,'Cut','Doppler');
ambgfun(wav,stepfmwaveform.SampleRate,stepfmwaveform.PRF,'Cut','Delay');
ambgfun(wav,stepfmwaveform.SampleRate,stepfmwaveform.PRF);
От этих фигур можно сделать следующие наблюдения:
Первый пустой указатель в задержке все еще в 10 микросекунд, таким образом, разрешение области значений сохраняется. Заметьте, что, потому что каждый импульс отличается, боковые лепестки в области области значений исчезают.
Первый пустой указатель в Доплере все еще на уровне 2 кГц, таким образом, он имеет то же Доплеровское разрешение как линейный train импульса FM с 5 импульсами. Боковые лепестки в Доплеровской области все еще представляют как в линейном дорожном чемодане импульса FM.
Контурный график ступенчатой формы волны FM имеет также трудную ситуацию типа. Несмотря на то, что однозначная область значений значительно расширена, однозначный Доплер все еще ограничивается PRF формы волны.
Относительно недостатка ступенчатой формы волны FM, обработка становится более сложной.
Другая важная группа форм волны является закодированными фазой формами волны, среди которых обычно используемые единицы являются кодами Баркера, откровенными кодами и кодами Zadoff-Чу. В закодированной фазой форме волны импульс разделен на несколько подымпульсов, часто называемых микросхемами, и каждый чип модулируется с данной фазой. Все закодированные фазой формы волны имеют хорошие свойства автокорреляции, которые делают их хорошими кандидатами на импульсное сжатие. Таким образом, если закодированная фазой форма волны принята, она могла бы понизить вероятность перехвата, когда энергия распространена в микросхемы. В получателе правильно сконфигурированный согласованный фильтр мог подавить шум и достигнуть хорошего разрешения области значений.
Код кусачек для снятия оболочки является, вероятно, самой известной закодированной фазой формой волны. Закодированная кусачками для снятия оболочки форма волны может быть создана с помощью следующей команды.
barkerwaveform = phased.PhaseCodedWaveform('Code','Barker','NumChips',7,... 'SampleRate', fs,'ChipWidth',1/bw,'PRF',prf)
barkerwaveform = phased.PhaseCodedWaveform with properties: SampleRate: 200000 Code: 'Barker' ChipWidth: 1.0000e-05 NumChips: 7 PRF: 10000 PRFSelectionInputPort: false OutputFormat: 'Pulses' NumPulses: 1 PRFOutputPort: false
wav = barkerwaveform();
Этот код Кусачек для снятия оболочки состоит из 7 микросхем. Его нулем Доплеровское сокращение функции неоднозначности дают
ambgfun(wav,barkerwaveform.SampleRate,barkerwaveform.PRF,'Cut','Doppler');
От фигуры каждый видит, что нуль Доплеровское сокращение функции неоднозначности кода Баркера имеет интересное свойство. Все его боковые лепестки имеют ту же высоту и точно 1/7 mainlobe. На самом деле, длина-N, которую код Баркера может предоставить подавлению от пика к пику N, который помогает отличить тесно расположенные цели в области значений. Это - самое важное свойство кода Баркера. Разрешение области значений составляет приблизительно 10 микросекунд, то же самое как ширина чипа.
Существует две проблемы, сопоставленные с кодом Баркера. Во-первых, существует только семь известных кодов Баркера. Их длины равняются 2, 3, 4, 5, 7, 11 и 13. Считается, что нет никаких других кодов Баркера. Во-вторых, Доплеровская производительность кода Баркера довольно плоха. Несмотря на то, что функция неоднозначности имеет хорошую форму в нуле Доплеровское сокращение, если существует некоторый эффект Доплера, уровень бокового лепестка значительно увеличивается. Увеличение видно в следующем контурном графике.
ambgfun(wav,barkerwaveform.SampleRate,barkerwaveform.PRF);
Этот пример сравнил несколько популярных форм волны включая прямоугольную форму волны, линейную форму волны FM, ступенчатую форму волны FM и Закодированную кусачками для снятия оболочки форму волны. Это также показало, как использовать функцию неоднозначности, чтобы анализировать эти формы волны и определить их разрешающие способности.
[1] Нэдэв Левэнон и Ила Мозезон, радарные сигналы, нажатие Wiley-IEEE, 2004.
[2] Марк Ричардс, основные принципы радарной обработки сигналов, Макгроу Хилла, 2005.