exponenta event banner

поэтапный. PhaseShiftBeamformer

Узкополосный формирователь луча фазового сдвига

Описание

Поэтапный. Объект PhaseSheyBeamformer реализует узкополосный фазово-сдвиговый формирователь луча. Формирователь луча со сдвигом фазы аппроксимирует формирователь луча с временной задержкой для узкополосных сигналов путем фазового сдвига поступающего сигнала. Формирователь луча со сдвигом фазы относится к семейству обычных формирователей луча.

Для формирования сигналов, поступающих в массив:

  1. Создать phased.PhaseShiftBeamformer и задайте его свойства.

  2. Вызовите объект с аргументами, как если бы это была функция.

Дополнительные сведения о работе системных объектов см. в разделе Что такое системные объекты?.

Создание

Описание

beamformer = phased.PhaseShiftBeamformer создает object™ системы формирователя луча со сдвигом фазы, beamformer, со значениями свойств по умолчанию.

beamformer = phased.PhaseShiftBeamformer(Name,Value) создает формирователь луча фазового сдвига с каждым свойством Name задать для указанного Value. Можно указать дополнительные аргументы пары имя-значение в любом порядке как (Name1,Value1,...,NameN,ValueN). Заключите каждое имя свойства в отдельные кавычки.

Пример: beamformer = phased.PhaseShiftBeamformer('SensorArray',phased.URA,'OperatingFrequency',300e6) устанавливает массив датчиков в однородный прямоугольный массив (URA) со значениями свойств URA по умолчанию. Формирователь луча имеет рабочую частоту 300 МГц.

Свойства

развернуть все

Если не указано иное, свойства не настраиваются, что означает невозможность изменения их значений после вызова объекта. Объекты блокируются при их вызове, и release функция разблокирует их.

Если свойство настраивается, его значение можно изменить в любое время.

Дополнительные сведения об изменении значений свойств см. в разделе Проектирование системы в MATLAB с использованием системных объектов.

Массив датчиков, указанный как системный объект массива, принадлежащий панели инструментов системы фазированных массивов. Массив датчиков может содержать подрешетки.

Пример: phased.URA

Скорость распространения сигнала, заданная как действительный положительный скаляр. Единицы измерения в метрах в секунду. Скорость распространения по умолчанию - это значение, возвращаемое physconst('LightSpeed').

Пример: 3e8

Типы данных: single | double

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

Пример: 1e9

Типы данных: single | double

Источник направления формирования луча, указанный как 'Property' или 'Input port'. Укажите, исходит ли направление формирования луча из Direction свойство этого объекта или из входного аргумента, ANG. Значения этого свойства:

'Property'Укажите направление формирования луча с помощью Direction собственность.
'Input port'Укажите направление формирования луча с помощью входного аргумента, ANG.

Типы данных: char

Направления формирования луча, заданные как вектор 2 на 1 с действительным значением или матрица 2-by-L с действительным значением. Для матрицы каждый столбец указывает другое направление формирования луча. Каждый столбец имеет форму [AzimuthAngle;ElevationAngle]. Азимутальные углы должны лежать между -180 ° и 180 °, а углы места - между -90 ° и 90 °. Все углы определяются относительно локальной системы координат массива. Единицы измерения в градусах.

Пример: [40;30]

Зависимости

Чтобы включить это свойство, установите значение DirectionSource свойство для 'Property'.

Типы данных: single | double

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

Пример: 5

Типы данных: single | double

Если для этого свойства задано значение 'Distortionless'коэффициент усиления в направлении формирования луча равен 0 дБ. Если для этого свойства задано значение 'Preserve power', норма весов - единство.

Пример: 'Preserve power'

Типы данных: char

Включить вывод весов формирования луча, указанных как false или true. Чтобы получить веса для формирования луча, задайте для этого свойства значение true и использовать соответствующий выходной аргумент, W. Если вы не хотите получать веса, установите для этого свойства значение false.

Типы данных: logical

Использование

Описание

пример

Y = beamformer(X) осуществляет фазовое формирование луча на входном сигнале, Xи возвращает выходные данные в виде луча в Y. Чтобы использовать этот синтаксис, задайте для параметра DirectionSource значение 'Property' и задайте направление формирования луча с помощью свойства «Направление».

пример

Y = beamformer(X,ANG) использует ANG входной аргумент для задания направления формирования луча. Чтобы использовать этот синтаксис, задайте для свойства DirectionSource значение 'Input port'.

[Y,W] = beamformer(___) возвращает веса формирования луча, W. Чтобы использовать этот синтаксис, задайте для свойства WeaingOutputPort значение true.

Входные аргументы

развернуть все

Входной сигнал, определяемый как комплексная матрица M-by-N. Если матрица датчиков содержит подрешетки, N - количество подрешеток; в противном случае N - количество элементов массива.

Размер первого размера входной матрицы может изменяться для моделирования изменения длины сигнала. Изменение размера может происходить, например, в случае формы импульса с переменной частотой повторения импульса.

Типы данных: single | double
Поддержка комплексного номера: Да

Направления формирования луча, заданные как вектор столбца 2 на 1 с действительным значением или 2-by-L матрица. L - количество направлений формирования луча. Каждый столбец имеет форму [AzimuthAngle;ElevationAngle]. Единицы измерения в градусах. Каждый азимутальный угол должен лежать между -180 ° и 180 °, а каждый угол возвышения - между -90 ° и 90 °.

Пример: [40;10]

Зависимости

Чтобы включить этот аргумент, задайте для свойства DirectionSource значение 'Input port'.

Типы данных: single | double

Выходные аргументы

развернуть все

Выходной сигнал в виде луча, возвращаемый в виде матрицы M-by-L с комплексными значениями, где M - количество строк X L - число направлений формирования луча.

Типы данных: single | double
Поддержка комплексного номера: Да

Весовые коэффициенты формирования луча, возвращаемые в виде комплексной матрицы N-by-L. Если матрица датчиков содержит подрешетки, N - количество подрешеток; в противном случае N - число элементов. L - количество направлений формирования луча.

Зависимости

Чтобы включить этот вывод, задайте для свойства DirectionSource значение true.

Типы данных: single | double
Поддержка комплексного номера: Да

Функции объекта

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

release(obj)

развернуть все

stepЗапустить алгоритм объекта System
releaseДеблокирование ресурсов и разрешение изменений значений свойств объекта системы и входных признаков
resetСброс внутренних состояний объекта System

Примеры

свернуть все

Применить фазовое формирование луча к синусоидальному сигналу, принятому 7-элементным ULA. Направление формирования луча - азимут 45 ° и отметка 0 °. Предположим, что массив работает на частоте 300 МГц. Укажите направление формирования луча с помощью Direction собственность.

Смоделировать сигнал.

t = (0:1000)';
fsignal = 0.01;
x = sin(2*pi*fsignal*t);
c = physconst('Lightspeed');
fc = 300e6;
incidentAngle = [45;0];
array = phased.ULA('NumElements',7);
x = collectPlaneWave(array,x,incidentAngle,fc,c);
noise = 0.1*(randn(size(x)) + 1j*randn(size(x)));
rx = x + noise;

Настройте формирователь луча со сдвигом фазы, а затем сформируйте входные данные.

beamformer = phased.PhaseShiftBeamformer('SensorArray',array,...
    'OperatingFrequency',fc,'PropagationSpeed',c,...
    'Direction',incidentAngle,'WeightsOutputPort',true);
[y,w] = beamformer(rx);

Постройте график исходного сигнала в среднем элементе и сигнала в виде луча.

plot(t,real(rx(:,4)),'r:',t,real(y))
xlabel('Time (sec)')
ylabel('Amplitude')
legend('Input','Beamformed')

Figure contains an axes. The axes contains 2 objects of type line. These objects represent Input, Beamformed.

Постройте график массива после применения весов.

pattern(array,fc,[-180:180],0,'PropagationSpeed',c,'Type',...
    'powerdb','CoordinateSystem','polar','Weights',w)

Применить фазовое формирование луча к сигналу, принимаемому 5-элементным ULA. Направление формирования луча - азимут 45 ° и отметка 0 °. Предположим, что массив работает на частоте 300 МГц. Укажите направление формирования луча с помощью входного порта.

Смоделировать синусоидальный сигнал, поступающий в матрицу.

t = (0:1000)';
fsignal = 0.01;
x = sin(2*pi*fsignal*t);
c = physconst('LightSpeed');
fc = 300e6;
incidentAngle = [45;0];
array = phased.ULA('NumElements',5);
x = collectPlaneWave(array,x,incidentAngle,fc,c);
noise = 0.1*(randn(size(x)) + 1j*randn(size(x)));
rx = x + noise;

Создайте формирователь луча со сдвигом фазы и затем сформируйте входные данные.

beamformer = phased.PhaseShiftBeamformer('SensorArray',array,...
    'OperatingFrequency',fc,'PropagationSpeed',c,...
    'DirectionSource','Input port','WeightsOutputPort',true);

Получение сигнала в виде луча и весов формирователя луча.

[y,w] = beamformer(rx,incidentAngle);

Постройте график исходного сигнала в среднем элементе и сигнала в виде луча.

plot(t,real(rx(:,3)),'r:',t,real(y))
xlabel('Time')
ylabel('Amplitude')
legend('Original','Beamformed')

Figure contains an axes. The axes contains 2 objects of type line. These objects represent Original, Beamformed.

Постройте график массива после применения весов.

pattern(array,fc,[-180:180],0,'PropagationSpeed',c,'CoordinateSystem','rectangular','Weights',w)

Figure contains an axes. The axes with title Azimuth Cut (elevation angle = 0.0°) contains an object of type line. This object represents 300 MHz.

Алгоритмы

развернуть все

Ссылки

[1] Деревья фургонов, оптимальная обработка массивов H.L. Нью-Йорк, Нью-Йорк: Wiley-Interscience, 2002.

[2] Джонсон, Дон Х. и Д. Даджеон. Обработка сигналов массива. Энглвуд Клиффс, Нью-Джерси: Прентис Холл, 1993.

[3] Ван Вин, бакалавр и К. М. Бакли. «Формирование луча: универсальный подход к пространственной фильтрации». IEEE ASSP Magazine, т. 5 № 2 стр. 4-24.

Расширенные возможности

.
Представлен в R2011a