exponenta event banner

поэтапный. MonopulseEstimator

Амплитудная моноимпульсная пеленгация

Описание

Поэтапный. Система object™ MonopulseEstimator реализует оценщик целевого направления с использованием метода амплитудных моноимпульсов с произвольной геометрией массива. Объект работает с каналами суммы и разности, которые выводятся из phased.MonopulseFeed Системный объект или собственный генератор каналов суммарных разностей. Выходной сигнал представляет собой оценку целевого направления по азимуту и отметке. Объект можно использовать для оценки направления цели и отслеживания цели.

Для создания моноимпульсной оценки:

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

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

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

Создание

Описание

estimator = phased.MonopulseEstimator создает объект системы моноимпульсной оценки, estimator, со значениями свойств по умолчанию.

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

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

Примечание

Можно также создать phased.MonopulseEstimator объект из phased.MonopulseFeed с использованием getMonopulseEstimator объектная функция.

Свойства

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

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

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

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

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

Пример: phased.URA

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

Пример: 3e8

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

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

Пример: 1e9

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

Охват моноимпульсного оценщика, указанный как '3D' или 'Azimuth'. При установке для этого свойства значения '3D', моноимпульсный оценщик использует суммарный канал и каналы как азимута, так и разности высот. При установке для этого свойства значения 'Azimuth'оценщик использует суммарный канал и канал разности азимутов.

Угол сквинта, заданный как скалярный или вещественно-значимый вектор 2 на 1. Угол наклона - это угол разделения или углы между суммарной балкой и балками вдоль направлений азимута и отметки.

  • При установке Coverage свойство для 'Azimuth', установите SquintAngle для скаляра.

  • При установке Coverage свойство для '3D', можно указать угол сквинта как скаляр или вектор. Если установить SquintAngle свойство для скаляра, то угол наклона одинаков как по азимуту, так и по направлению отметки. Если установить SquintAngle свойство для вектора 2 на 1, его элементы задают угол наклона вдоль направления азимута и отметки.

Пример: [20;5]

Формат вывода направления, указанный как 'Angle' или 'Angle offset'. При установке для этого свойства значения 'Angle', выходные углы находятся в направлении цели. При установке для этого свойства значения 'Angle offset', выходной сигнал представляет собой угловое смещение от направления управления массивом.

Установить для этого свойства значение true для вывода отношения суммарного и разностного каналов в направлениях азимута и отметки. Установить для этого свойства значение false чтобы не выводить отношения. Отношение часто используется в качестве сигнала управления ошибками.

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

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

Описание

angest = estimator(sumchan,diffazchan,steervec) возвращает расчетный целевой угол, angest, полученный из суммарного канального сигнала, sumchanи сигнал канала разности азимутов, diffazchan. steervec определяет направление управления массивом. Чтобы использовать этот синтаксис, установите Coverage свойство для 'Azimuth'.

пример

angest = estimator(sumchan,diffazchan,diffelchan,steervec) также определяет сигнал канала разности высот, diffelchan. Чтобы использовать этот синтаксис, установите Coverage свойство для '3D'.

[angest,dratio] = estimator(___) также возвращает отношение суммы и разности, dratio. Чтобы использовать этот синтаксис, установите SumDifferenceRatioOutputPort свойство для true.

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

 [angest,dratio] = estimator(X,steervec)

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

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

Суммарный канальный сигнал, заданный как вектор N-by-1 столбца с комплексными значениями. N - количество снимков в сигнале.

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

Азимутальный разностно-канальный сигнал, определяемый как вектор N-by-1 столбца с комплексными значениями. N - количество снимков в сигнале.

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

Канальный сигнал разности отметок, определяемый как вектор N-by-1 столбца с комплексными значениями. N - количество снимков в сигнале.

Зависимости

Чтобы включить этот выходной аргумент, установите Coverage свойство для '3D'.

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

Направление управления массивом, заданное как скалярный или вещественно-значный вектор столбца 2 на 1.

  • При установке Coverage свойство для 'Azimuth'направление рулевого управления является скалярным и представляет азимутальный угол рулевого управления.

  • При установке Coverage свойство для '3D', вектор рулевого управления имеет вид [azimuthAngle; elevationAngle], где azimuthAngle - азимутальный угол поворота руля и elevationAngle - угол поворота руля.

Единицы измерения в градусах. Азимутальные углы лежат между -180 ° и 180 °, включительно, а углы места должны лежать между -90 ° и 90 ° включительно.

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

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

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

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

Оцененное направление цели, возвращаемое в виде действительного вектора 1-by-N или вещественной матрицы 2-by-N. N - количество снимков в сигнале. Единицы измерения в градусах.

  • При установке Coverage свойство для 'Azimuth', angest - действительный вектор 1-by-N. Элементы содержат оцененный угол азимута целевого направления при каждом снимке сигнала.

  • При установке Coverage свойство для '3D', angest - вещественно-значная матрица 2-by-N. Каждый столбец содержит расчетное целевое направление в форме [azimuthAngle;elevationAngle], где azimuthAngle - расчетный угол азимута, и elevationAngle - расчетный угол возвышения.

Если установить OutputFormat свойство для 'Angle offset'каждый элемент вектора или матрицы представляет смещение от направления вектора управления.

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

Отношение суммарных и разностных каналов, возвращаемое в виде вещественно-значного вектора 1-by-N или вещественно-значной матрицы 2-by-N. N - количество снимков в сигнале. Единицы измерения в градусах.

  • При установке Coverage свойство для 'Azimuth', dratio - действительный вектор 1-by-N. Элементы содержат отношение суммы к разностному каналу азимута в каждом снимке сигнала.

  • При установке Coverage свойство для '3D', dratio - вещественно-значная матрица 2-by-N. Элементы первой строки содержат отношение суммы к разностному каналу азимута в каждом снимке сигнала. Элементы второй строки содержат отношение суммы к разностному каналу на каждом снимке сигнала.

Зависимости

Чтобы включить этот выходной аргумент, установите SumDifferenceRatioOutputPort свойство для true.

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

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

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

release(obj)

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

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

Примеры

свернуть все

После создания каналов суммирования и разности определите направление цели приблизительно на 24 градуса по азимуту и на 40 градусов по отношению к однородной прямоугольной матрице 5 на 5.

Создание моноимпульсной системы подачи на основе URA.

fc = 200e6;
c = physconst('LightSpeed');
lambda = c/fc;
array = phased.URA('Size',[5 5],'ElementSpacing',lambda/2);
feed = phased.MonopulseFeed('SensorArray',array,'OperatingFrequency', ...
    fc,'Coverage','3D','AngleOutputPort',true);

Создайте сигнал с помощью вектора управления.

steervector = phased.SteeringVector('SensorArray',array);
x = steervector(feed.OperatingFrequency,[24;40]).';

Получить суммарный и разностный каналы и расчетный целевой угол.

[sumch,azch,elch,est_dir] = feed(x,[30;35]);
disp(est_dir)
   24.3705
   41.1997

Использовать производный phased.MonopulseEstimator объект для получения также целевого угла.

estimator = getMonopulseEstimator(feed);
est_dir = estimator(sumch,azch,elch,[30;35])
est_dir = 2×1

   24.3705
   41.1997

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

array = phased.URA('Size',4);
collect = phased.Collector('Sensor',array);
feed = phased.MonopulseFeed('SensorArray',array,'Coverage','3D');
estimator = phased.MonopulseEstimator('SensorArray',array,'Coverage','3D');

% Create a 100-sample random source signal with a single spike to simulate
% an echo.
x = sqrt(0.01/2)*(randn(100,1)+1i*randn(100,1));
x(20) = 1;
targetangle = [31;9];
rx = collect(x,targetangle);

Наведите моноимпульс в другом направлении от цели. Затем создайте углы суммы и разности.

steerangle = [30;10];
[sumch,azch,elch] = feed(rx,steerangle);

% Detect the target by finding the peak of the sum channel.
[~,idx] = max(abs(sumch));

% Estimate the arrival angle using a monopulse estimator.
est_dir = estimator(sumch(idx),azch(idx),elch(idx),steerangle)
est_dir = 2×1

   31.1307
    9.0132

Ссылки

[1] Махафза, Б. Р. Анализ и проектирование радиолокационной системы с использованием Matlab. Бока Ратон: Чепмен и Холл/КПР, 2000.

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

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