sonarEmitter

Генератор акустических сигналов и помех

Описание

The sonarEmitter System object™ создает излучатель для моделирования гидроакустических выбросов. Можно использовать sonarEmitter объект в сценарии, который обнаруживает и отслеживает движущиеся и стационарные платформы. Создайте сценарий с помощью trackingScenario.

Гидроакустический излучатель изменяет угол обзора между обновлениями путем шага механического и электронного положения луча с шагами от углового диапазона, заданного в FieldOfView свойство. Гидроакустический излучатель сканирует общую область азимута и повышения, заданную гидроакустическими механическими и электронными сканами пределов, MechanicalScanLimits и ElectronicScanLimits, соответственно. Если для пределов скана азимута или повышения задано значение [0 0]затем сканирование по этой размерности для этого режима скана не выполняется. Если максимальная механическая скорость скана для азимута или повышения установлена равной нулю, то механическое сканирование по этой размерности не выполняется.

Чтобы сгенерировать гидроакустические обнаружения:

  1. Создайте sonarEmitter Объекту и установите его свойства.

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

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

Создание

Описание

пример

emitter = sonarEmitter(EmitterIndex) создает объект гидроакустического излучателя со значениями свойств по умолчанию.

emitter = sonarEmitter(EmitterIndex,'No scanning') является синтаксисом удобства, который создает sonarEmitter который следит за направлением боссайта гидроакустического преобразователя. Механическое или электронное сканирование не выполняется. Этот синтаксис устанавливает ScanMode свойство к 'No scanning'.

emitter = sonarEmitter(EmitterIndex,'Raster') является синтаксисом удобства, который создает sonarEmitter объект, который механически сканирует растровый шаблон. Размах растра составляет 90 ° по азимуту от -45 ° до + 45 ° и по повышению от горизонта до 10 ° над горизонтом. Свойства, заданные этим синтаксисом, см. в разделе Сканирование растров.

emitter = sonarEmitter(EmitterIndex,'Rotator') является синтаксисом удобства, который создает sonarEmitter объект, который механически сканирует 360 ° по азимуту путем механического вращения гидролокатора с постоянной скоростью. Когда вы задаете HasElevation на trueгидролокатор механически указывает в сторону центра повышения поля зрения. Свойства, заданные этим синтаксисом, см. в разделе Сканирование ротатора.

emitter = sonarEmitter(EmitterIndex,'Sector') является синтаксисом удобства для создания sonarEmitter объект, который механически сканирует сектор азимута 90 ° от -45 ° до + 45 °. Настройка HasElevation на true, указывает гидроакустический сигнал в направлении центра поля зрения повышения. Можно изменить ScanMode на 'Electronic' для электронного сканирования того же азимутального сектора. В этом случае гидролокатор не наклоняется механически в электронном скане. Вместо этого лучи складываются в электронном виде, чтобы обработать всёся повышение, охватываемый пределами скана в одной скважине. Свойства, заданные этим синтаксисом, см. в разделе «Проверка сектора».

emitter = sonarEmitter(___,Name,Value) устанавливает свойства, используя одну или несколько пары "имя-значение" после всех других входных параметров. Заключайте каждое имя свойства в кавычки. Для примера, sonarEmitter('CenterFrequency',2e6) создает гидроакустический излучатель, создает обнаружения в системе Декартовых координат эмиттера и имеет максимальную область значений обнаружения 200 метров. Если вы задаете индекс эмиттера используя EmitterIndex свойство, можно опустить EmitterIndex вход.

Свойства

расширить все

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

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

Для получения дополнительной информации об изменении значений свойств смотрите Разработку системы в MATLAB Использование Системных объектов.

Уникальный идентификатор эмиттера, заданный как положительное целое число. При создании sonarEmitter системный объект, необходимо либо задать EmitterIndex в качестве первого входного параметра в синтаксисе создания или укажите его как значение для EmitterIndex свойство в синтаксисе создания.

Пример: 2

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

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

Пример: 5

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

Расположение эмиттера на платформе, заданное как вектор с реальным значением 1 на 3. Это свойство определяет координаты эмиттера относительно источника платформы. Значение по умолчанию задает, что источник эмиттера находится в источнике платформы. Модули измерения указаны в метрах.

Пример: [.2 0.1 0]

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

Ориентация эмиттера относительно платформы, заданная как трехэлементный вектор с реальным значением. Каждый элемент вектора соответствует собственному повороту угла Эйлера, который несет оси тела платформы к осям эмиттера. Три элемента определяют повороты вокруг z, y и x осей соответственно в этом порядке. Первое вращение вращает ось платформы вокруг оси z. Второе вращение вращает переносимую систему координат вокруг оси повернутого y -. Окончательное вращение вращает переносимую систему координат вокруг оси x. Модули указаны в степенях.

Пример: [10 20 -15]

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

Поля зрения датчика, заданные как вектор 2 на 1 положительных скалярных величинах в степени [azfov;elfov]. Поле зрения определяет общую угловую длину, охватываемую датчиком. Поле зрения «азимут» azfov должен лежать в интервале (0,360]. Поле зрения по повышению elfov должен лежать в интервале (0,180].

Пример: [14;7]

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

Режим сканирования гидроакустического аппарата, заданный как 'Mechanical', 'Electronic', 'Mechanical and electronic', или 'No scanning'.

Режимы скана

ScanModeЦель
'Electronic'Гидролокатор сканируется в электронном виде через азимут и пределы по повышению, заданные ElectronicScanLimits свойство. Направление скана увеличивается на угол гидроакустического поля зрения между жилыми объектами.
'No scanning'Гидроакустический луч указывает вдоль борсайта антенны, заданный как mountingAngles свойство.

Пример: 'No scanning'

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

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

Когда HasElevation является trueпределы скана принимают форму [minAz maxAz; minEl maxEl]. minAz и maxAz представляют минимальные и максимальные пределы азимутального угла скана. minEl и maxEl представляют минимальные и максимальные пределы скана угла возвышения. Когда HasElevation является falseпределы скана принимают форму [minAz maxAz]. Если вы задаете пределы скана как матрицу 2 на 2, но задаете HasElevation на falseвторая строка матрицы игнорируется.

Пределы азимутального скана и пределы скана должны находиться в пределах закрытого интервала [-90 ° 90 °]. Модули указаны в степенях.

Пример: [-90 90; 0 85]

Зависимости

Чтобы включить это свойство, установите ScanMode свойство к 'Electronic' или 'Mechanical and electronic'.

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

Это свойство доступно только для чтения.

Электронный угол скана тока гидроакустика, возвращаемый в виде скаляра или вектора-столбца 1 на 2. Когда HasElevation является true, угол скана принимает форму [Az;El]. Az и El представление углов обзора азимута и повышения, соответственно. Когда HasElevation является false, угол скана является скаляром, представляющим угол азимутального скана.

Зависимости

Чтобы включить это свойство, установите ScanMode свойство к 'Electronic' или 'Mechanical and electronic'.

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

Это свойство доступно только для чтения.

Посмотрите угол излучателя, заданный как скаляр или реальный вектор 2 на 1. Угол взгляда является комбинацией механического угла и электронного угла в зависимости от ScanMode свойство. Когда HasElevation является trueугол взгляда принимает форму [Az;El]. Az и El представление углов обзора азимута и повышения, соответственно. Когда HasElevation является false, угол взгляда является скаляром, представляющим угол взгляда азимута.

ScanModeLookAngle
'Mechanical'MechnicalAngle
'Electronic'ElectronicAngle
'Mechanical and Electronic'MechnicalAngle + ElectronicAngle
'No scanning'0

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

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

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

Уровень гидроакустического источника, заданный как скаляр. Уровень источника соответствует интенсивности звуковой волны, имеющей давление rms 1 мкПа. Модули указаны в dB//1 мкПа.

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

Центральная частота гидроакустической полосы, заданная как положительная скалярная величина. Модули указаны в герцах.

Пример: 100e6

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

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

Пример: 100e3

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

Типы обнаруженных форм волны, заданные как неотрицательный целочисленный вектор L -элемент.

Пример: [1 4 5]

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

Обработка усиления при демодуляции формы излучаемого сигнала, заданная как скаляр. Коэффициент усиления обработки достигается посредством излучения сигнала по полосе пропускания, которая больше минимальной полосы пропускания, необходимой для передачи информации, содержащейся в сигнале. Модули указаны в дБ.

Пример: 20

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

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

Описание

пример

sonarsigs = emitter(platform,simTime) создает гидроакустические сигналы, sonarsigs, от излучателя на platform в текущее время симуляции, simTime. Объект эмиттера может одновременно генерировать сигналы от нескольких излучателей на платформе.

[sonarsigs,config] = emitter(platform,simTime) также возвращает строения эмиттера, config, во время текущей симуляции.

Входные параметры

расширить все

Платформа эмиттера, заданная как объект платформы, Platform, или структура платформы:

ОбластьОписание
PlatformID

Уникальный идентификатор для платформы, заданный как скалярное положительное целое число. Это обязательное поле, не имеющее значения по умолчанию.

ClassID

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

Position

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

Velocity

Скорость платформы в координатах сценария, заданная как действительный вектор 1 на 3. Модули указаны в метрах в секунду. Значение по умолчанию является [0 0 0].

Speed

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

Acceleration

Ускорение платформы в координатах сценария, заданное как вектор-строка 1 на 3 в метрах в секунду за секунду. Значение по умолчанию является [0 0 0].

Orientation

Ориентация платформы относительно локального сценария NED координатной системы координат, заданная как скалярный кватернион или матрица вращения 3 на 3. Ориентация определяет поворот системы координат NED к текущей системе координат тела платформы. Модули безразмерны. Значение по умолчанию является quaternion(1,0,0,0).

AngularVelocity

Скорость вращения платформы в координатах сценария, заданная как действительный вектор 1 на 3. Величина вектора задает угловую скорость. Направление задает ось поворота по часовой стрелке. Модули указаны в степенях в секунду. Значение по умолчанию является [0 0 0].

Signatures

Массив ячеек сигнатур, определяющих видимость платформы для излучателей и датчиков в сценарии. По умолчанию это массив ячеек {rcsSignature, irSignature, tsSignature}.

Текущее время симуляции, заданное как положительная скалярная величина. The trackingScenario объект вызывает гидроакустический излучатель с регулярными временными интервалами. Гидроакустический излучатель генерирует новые сигналы с интервалами, заданными UpdateInterval свойство. Значение UpdateInterval свойство должно быть целым числом, кратным временному интервалу симуляции. Обновления, запрошенные эмиттером между интервалами обновления, не содержат обнаружений. Модули указаны в секундах.

Пример: 10.5

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

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

расширить все

Гидроакустические выбросы, возвращенные как массив sonarEmission объекты.

Эмиттер тока строений, возвращенный как массив структур.

ОбластьОписание
EmitterIndex

Уникальный индекс эмиттера, возвращенный как положительное целое число.

IsValidTime

Допустимое время излучения, возвращаемое следующим 0 или 1. IsValidTime является 0 когда обновления эмиттера запрашиваются в моменты времени, которые находятся между интервалами обновления, заданными UpdateInterval свойство.

IsScanDone

Завершил ли эмиттер скан, возвращается следующим true или false.

FieldOfView

Поле зрения эмиттера, возвращаемое как двухэлементный вектор [азимут; повышение] в степенях.

MeasurementParameters

Параметры измерения Эмиттера, возвращенные как массив структур, содержащих преобразования координатной системы координат, необходимые для преобразования положений и скоростей в системе координат верхнего уровня в систему координат тока.

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

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

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

release(obj)

расширить все

coverageConfigПокрытие датчика и излучателя строения
perturbationsВозмущение, заданное для объекта
perturbПрименить возмущения к объекту
stepЗапуск алгоритма системного объекта
releaseОтпустите ресурсы и допустите изменения в значениях свойств системного объекта и входных характеристиках
resetСброс внутренних состояний Системного объекта

Примеры

свернуть все

Reflect a sonar emission from a platform defined within a trackingScenario.

Создайте объект сценария отслеживания.

scenario = trackingScenario;

Создайте sonarEmitter.

emitter = sonarEmitter(1);

Монтируйте излучатель на платформе в рамках сценария.

plat = platform(scenario,'Emitters',emitter);

Добавьте другую платформу, чтобы отразить излучаемый сигнал.

tgt = platform(scenario);
tgt.Trajectory.Position = [30 0 0];

Излучайте сигнал, используя emit функция объекта platform .

txSigs = emit(plat, scenario.SimulationTime)
txSigs = 1x1 cell array
    {1x1 sonarEmission}

Отражайте сигнал от платформ в сценарии.

sigs = underwaterChannel(txSigs, scenario.Platforms)
sigs = 1x1 cell array
    {1x1 sonarEmission}

Подробнее о

расширить все

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

.

См. также

Классы

Функции

Объекты

Введенный в R2018b