В этом примере показано, как смоделировать подмассивы, обычно используемые в современных поэтапных системах массивов, с помощью Phased Array System Toolbox™, и выполнить исследования.
Поэтапные антенны массивов предоставляют много преимуществ по традиционным спутниковым антеннам. Элементы поэтапных антенн массивов легче произвести; целая система страдает меньше от отказов компонента; и лучший из всех, может быть электронно отсканирован к различным направлениям.
Однако такая гибкость не прибывает бесплатно. В полной мере пользование поэтапным массивом требует руководящей схемы размещения и переключателей T/R позади каждого отдельного элемента. Для приложений, которые требуют больших массивов с тысячами или десятками тысяч элементов, стоимость выполнения так слишком высока, чтобы быть практичной. Кроме того, во многих таких приложениях, желаемая производительность не требует полной степени свободы от массива. Следовательно, на практике, развернутые системы часто используют поставивший под угрозу подход. Элементы сгруппированы в подмассивы, и затем подмассивы формируют целый массив. Элементы все еще легко произвести; целый массив все еще устойчив относительно отказов компонента; кроме того, переключатели T/R только необходимы в каждом подмассиве, таким образом значительно уменьшая стоимость.
Следующие разделы показывают, как смоделировать сеть подмассива с различными настройками для двух определенных приложений: массивы ограниченного поля зрения (LFOV) и широкополосные массивы.
Массивы ЛЬФОВА обычно используются в спутниковых приложениях. Как следует из названия, массив ЛЬФОВА только сканирует в очень ограниченном окне, обычно меньше чем 10 градусов. Из-за этого возможно использовать подмассивы, и такие подмассивы могут быть помещены в интервал, намного больше, чем половина длины волны.
Самый простой способ создать массив с подмассивами состоит в том, чтобы непрерывно разместить подмассив рядом. Следующие построения фрагмента кода ULA с 64 элементами состоят из восьми ULAs с 8 элементами. В каждом подмассиве элементы расположены с интервалами наполовину длина волны. Обратите внимание на то, что нет никакой руководящей возможности в каждом подмассиве, таким образом, массив может только управляться с помощью подмассивов.
Геометрия массивов видна в следующем рисунке.
fc = 3e8; c = 3e8; antenna = phased.IsotropicAntennaElement('BackBaffled',true); N = 64; Nsubarray = 8; subula = phased.ULA(N/Nsubarray,0.5*c/fc,'Element',antenna); replarray = phased.ReplicatedSubarray('Subarray',subula,... 'GridSize',[1 Nsubarray])
replarray = phased.ReplicatedSubarray with properties: Subarray: [1x1 phased.ULA] Layout: 'Rectangular' GridSize: [1 8] GridSpacing: 'Auto' SubarraySteering: 'None'
Затем сравните диаграмму направленности этого массива к диаграмме направленности ULA с 64 элементами без подмассивов.
refula = phased.ULA(N,0.5*c/fc,'Element',antenna); subplot(2,1,1), pattern(replarray,fc,-180:180,0,'Type','powerdb',... 'CoordinateSystem','rectangular','PropagationSpeed',c); title('Subarrayed ULA Azimuth Cut'); axis([-90 90 -50 0]); subplot(2,1,2), pattern(refula,fc,-180:180,0,'Type','powerdb',... 'CoordinateSystem','rectangular','PropagationSpeed',c); title('ULA Azimuth Cut'); axis([-90 90 -50 0]);
Из графика ясно, что эти два ответа идентичны в развороте. Обратите внимание на то, что даже при том, что подмассивы широко расставлены, в ответе нет никакого скрипучего лепестка.
Затем регулируйте оба массива к 2 азимутам степеней.
steerang = 2; steeringvec_replarray = phased.SteeringVector('SensorArray',replarray,... 'PropagationSpeed',c); w = steeringvec_replarray(fc,steerang); steeringvec_refula = phased.SteeringVector('SensorArray',refula,... 'PropagationSpeed',c); wref = steeringvec_refula(fc,steerang); subplot(2,1,1), pattern(replarray,fc,-180:180,0,'Type','powerdb',... 'CoordinateSystem','rectangular','PropagationSpeed',c,'Weights',w); title('Subarrayed ULA Azimuth Cut'); axis([-90 90 -50 0]); subplot(2,1,2), pattern(refula,fc,-180:180,0,'Type','powerdb',... 'CoordinateSystem','rectangular','PropagationSpeed',c,'Weights',wref); title('ULA Azimuth Cut'); axis([-90 90 -50 0]);
В этом случае ответ ссылочного массива все еще сохраняет свою исходную форму, но дело обстоит не так для подвыстраиваемого ULA. Для подвыстраиваемого ULA, несмотря на то, что mainlobe правильно управляется и стоит много больше боковых лепестков, ответ ясно показывает то, что часто упоминается как лепестки квантования. Название происходит от того, что регулирование на уровне подмассива; следовательно, необходимый сдвиг фазы для каждого элемента квантуется на уровне подмассива. Этот эффект ухудшается, когда массив управляется далее от разворота. Следующие графики показывают ответ после регулирования массивов к 6 градусам от разворота.
steerang = 6; w = steeringvec_replarray(fc,steerang); wref = steeringvec_refula(fc,steerang); subplot(2,1,1), pattern(replarray,fc,-180:180,0,'Type','powerdb',... 'CoordinateSystem','rectangular','PropagationSpeed',c,'Weights',w); title('Subarrayed ULA Azimuth Cut'); axis([-90 90 -50 0]); subplot(2,1,2), pattern(refula,fc,-180:180,0,'Type','powerdb',... 'CoordinateSystem','rectangular','PropagationSpeed',c,'Weights',wref); title('ULA Azimuth Cut'); axis([-90 90 -50 0]);
Поэтому при формировании ЛЬФОВА, нужно быть осторожным относительно использования непрерывных подмассивов.
Один способ компенсировать лепестки квантования состоит в том, чтобы добавить фазовращатели позади каждого элемента. Несмотря на то, что это увеличивает стоимость, это все еще обеспечивает большое сохранение по сравнению с полным массивом степени свободы, потому что T/R переключается, которые являются самыми дорогими частями, только должен быть реализован на уровне подмассива. Если существует фазовращатель позади каждого элемента, то ответ становится намного лучше, как показано в следующих графиках, принимая, что фазовращатели позади каждого элемента также сконфигурированы, чтобы указать каждый подмассив к 6 градусам от разворота.
release(replarray); replarray.SubarraySteering = 'Phase'; replarray.PhaseShifterFrequency = fc; subplot(2,1,1); pattern(replarray,fc,-180:180,0,'Type','powerdb','Weights',w,... 'CoordinateSystem','rectangular','PropagationSpeed',c,'SteerAngle',6); title('Subarrayed ULA Azimuth Cut'); axis([-90 90 -50 0]); subplot(2,1,2); pattern(refula,fc,-180:180,0,'Type','powerdb',... 'CoordinateSystem','rectangular','PropagationSpeed',c,'Weights',wref); title('ULA Azimuth Cut'); axis([-90 90 -50 0]);
Как примечание стороны, элемент и подмассивы не обязательно держатся к тому же направлению. В некоторых приложениях элементы в подмассивах управляются к определенному направлению. Подмассивы могут затем управляться к немного отличающимся направлениям, чтобы искать близость.
Несмотря на то, что электронно отсканированный массив часто называется поэтапным массивом, в действительности, настраивание фазы является только одним способом регулировать массив. Фазовращатели являются, по своей природе, узкополосными устройствами, таким образом, они только работают хорошо в узкой полосе, специально для больших массивов. Следующий рисунок показывает диаграммы направленности, когда ссылочный массив является фазой, управляемой до 30 градусов, и в несущей частоте и на 3 процента выше несущей частоты.
fsteer = [1 1.03]*fc; steerang = 30; release(steeringvec_refula); wref = squeeze(steeringvec_refula(fc,steerang)); subplot(2,1,1) pattern(refula,fsteer,-180:180,0,'Type','powerdb',... 'CoordinateSystem','rectangular','PropagationSpeed',c,'Weights',wref); title('ULA Azimuth Cut'); axis([-90 90 -50 0]); subplot(2,1,2) pattern(refula,fsteer,-180:180,0,'Type','powerdb',... 'CoordinateSystem','rectangular','PropagationSpeed',c,'Weights',wref); title('ULA Azimuth Cut, Peak Zoom View'); axis([25 35 -5 0]);
От фигуры это очевидно даже при том, что смещение частоты составляет простые 3 процента, пиковое местоположение, отодвинутое от желаемого направления. Это упоминается как косой эффект. Таким образом, чтобы достигнуть регулирования через широкополосное, нужно регулировать использующие истинные задержки.
Самый популярный способ достигнуть истинной задержки состоит в том, чтобы использовать кабели. Однако в большой апертуре массивов с тысячами элементов, реализовывая потенциально огромную задержку может потребовать большого количества кабелей. Следовательно, этот подход не является только дорогим, но также и громоздким. Подмассивы обеспечивают компромисс между точностью и выполнимостью. Таким образом, в каждом подмассиве, регулирование достигается фазой; и среди подмассивов, регулирование сделано истинными задержками.
Самый простой способ создать такой массив состоит в том, чтобы непрерывно сгруппировать подмассивы, как в предыдущих разделах.
Следующие графики сравнивают диаграммы направленности на трех частотах для подвыстраиваемого ULA. Массив управляется к 30 азимутам степеней на уровне подмассива с помощью истинной задержки. Снова, в каждом подмассиве, элементы также управляются к 30 азимутам степеней. Диаграмму направленности показывают в несущей частоте, на 10 процентов выше несущей частоты, и на 15 процентов выше несущей частоты.
steerang = 30; fsteer = [1 1.1 1.15]*fc; release(steeringvec_replarray); release(steeringvec_refula); w = squeeze(steeringvec_replarray(fsteer,steerang)); wref = squeeze(steeringvec_refula(fsteer,steerang)); subplot(2,1,1) pattern(replarray,fsteer,-180:180,0,'Type','powerdb',... 'PropagationSpeed',c,'CoordinateSystem','rectangular','Weights',w,... 'SteerAngle',steerang); title('Subarrayed ULA Azimuth Cut'); axis([-90 90 -50 0]); subplot(2,1,2) pattern(replarray,fsteer,-180:180,0,'Type','powerdb',... 'PropagationSpeed',c,'CoordinateSystem','rectangular','Weights',w,... 'SteerAngle',steerang); title('Subarrayed ULA Azimuth Cut, Peak Zoom View'); axis([25 35 -5 0]);
Графики показывают, что косой эффект был подавлен даже при том, что пропускная способность намного более широка по сравнению с предыдущим случаем. Однако как в случае ЛЬФОВА, если необходимая пропускная способность расширяет к на 15 процентов выше несущей частоты, диаграмма направленности становится нежелательным из-за лепестков квантования.
Один способ решить эту проблему состоит в том, чтобы использовать настройку с апериодическими подмассивами. Примерами таких настроек являются чередованные подмассивы, перекрытые подмассивы и даже случайные подмассивы. Следующий пример показывает чересстрочный подмассив, где концы подмассива чередуются и перекрываются. Поскольку это больше не формируется идентичными подмассивами, нужно запустить с апертуры большого массива и разделить ее, чтобы достигнуть такой настройки.
Геометрия массивов видна в следующем рисунке.
partarray = ... phased.PartitionedArray('Array',phased.ULA(N,0.5,'Element',antenna),... 'SubarraySteering','Phase'); sel = zeros(Nsubarray,N); Nsec = N/Nsubarray; for m = 1:Nsubarray if m==1 sel(m,(m-1)*Nsec+1:m*Nsec+1) = 1; elseif m==Nsubarray sel(m,(m-1)*Nsec:m*Nsec) = 1; else sel(m,(m-1)*Nsec:m*Nsec+1) = 1; end end partarray.SubarraySelection = sel
partarray = phased.PartitionedArray with properties: Array: [1x1 phased.ULA] SubarraySelection: [8x64 double] SubarraySteering: 'Phase' PhaseShifterFrequency: 300000000 NumPhaseShifterBits: 0
Получившаяся диаграмма направленности видна в следующих фигурах.
steeringvec_partarray = ... phased.SteeringVector('SensorArray',partarray,'PropagationSpeed',c); wwa = squeeze(steeringvec_partarray(fsteer,steerang)); subplot(2,1,1); pattern(partarray,fsteer,-180:180,0,'Type','powerdb',... 'PropagationSpeed',c,'CoordinateSystem','rectangular','Weights',wwa,... 'SteerAngle',steerang); title('Interlaced and Overlapped Subarrayed ULA Azimuth Cut'); axis([-90 90 -50 0]); subplot(2,1,2); pattern(replarray,fsteer,-180:180,0,'Type','powerdb',... 'PropagationSpeed',c,'CoordinateSystem','rectangular','Weights',w,... 'SteerAngle',steerang); title('Contiguous Subarrayed ULA Azimuth Cut'); axis([-90 90 -50 0]);
Новая диаграмма направленности подавляет самый большой лепесток квантования, достигая усиления приблизительно 5 дБ. Более высокие усиления могут быть достигнуты путем разработки более сложной перекрытой сети подмассива, но это выходит за рамки этого примера.
В этом примере показано, как смоделировать поэтапный массив с подмассивами и иллюстрирует несколько практических проблем при применении метода подмассива к приложениям, таким как массивы ЛЬФОВА или широкополосные массивы сканирования.
[1] Robert Mailloux, Electronically Scanned Arrays, Morgan & Claypool, 2007.