sonarEmitter

Акустический генератор сигналов и интерференции

Описание

sonarEmitter Система 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' or '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 смоделировать эмиттер гидролокатора, который может оценить целевое вертикальное изменение и скан в вертикальном изменении.

Типы данных: логический

Исходный уровень гидролокатора в виде скаляра. Исходный уровень относительно интенсивности звуковой волны, имеющей RMS давление 1 μPa. Модули находятся в дБ//1 μPa.

Типы данных: 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}.

Текущее время симуляции в виде положительной скалярной величины. 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