exponenta event banner

emissionsInBody

Преобразование выбросов в корпус платформы

Описание

embody = emissionsInBody(emscene,bodyframe) преобразует выбросы, emscene, с привязкой к координатам сценария в выбросах, embody, ссылается на координаты корпуса платформы. bodyframe определяет положение, скорость и ориентацию тела платформы.

Примеры

свернуть все

Преобразование радиолокационного излучения из координат сценария в корпус.

Определение радиолокационного излучения относительно кадра сценария.

emScene = radarEmission('PlatformID',1,'EmitterIndex',1, ...
    'OriginPosition',[0 0 0])
emScene = 
  radarEmission with properties:

              PlatformID: 1
            EmitterIndex: 1
          OriginPosition: [0 0 0]
          OriginVelocity: [0 0 0]
             Orientation: [1x1 quaternion]
             FieldOfView: [180 180]
         CenterFrequency: 300000000
               Bandwidth: 3000000
            WaveformType: 0
          ProcessingGain: 0
        PropagationRange: 0
    PropagationRangeRate: 0
                    EIRP: 0
                     RCS: 0

Определите положение, скорость и ориентацию тела относительно кадра сценария.

bodyFrame = struct( ...
    'Position',[10 0 0], ...
    'Velocity',[5 5 0], ...
    'Orientation',quaternion([45 0 0],'eulerd','zyx','frame'));

Преобразование излучения в корпус корпуса.

emBody = emissionsInBody(emScene,bodyFrame)
emBody = 
  radarEmission with properties:

              PlatformID: 1
            EmitterIndex: 1
          OriginPosition: [-7.0711 7.0711 0]
          OriginVelocity: [-7.0711 4.4409e-16 0]
             Orientation: [1x1 quaternion]
             FieldOfView: [180 180]
         CenterFrequency: 300000000
               Bandwidth: 3000000
            WaveformType: 0
          ProcessingGain: 0
        PropagationRange: 0
    PropagationRangeRate: 0
                    EIRP: 0
                     RCS: 0

Преобразование излучения гидролокатора из координат сценария в координаты тела. Использовать trackingScenario определить движение тела и использовать sonarEmitter для создания эмиссии.

Настройка сценария отслеживания.

scene = trackingScenario;

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

emitter = sonarEmitter(1,'No scanning');

Установить излучатель на платформу по сценарию на 100 метров ниже уровня моря.

platTx = platform(scene,'Emitters',emitter);
platTx.Trajectory.Position = [10 0 100];

Создайте другую платформу в сценарии.

platRx = platform(scene);
platRx.Trajectory.Position = [100 0 100];
platRx.Trajectory.Orientation = quaternion([45 0 0],'eulerd', ...
    'zyx','frame');

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

emScene = emit(platTx,scene.SimulationTime)
emScene = 1x1 cell array
    {1x1 sonarEmission}

Распространение излучения через подводный канал.

emPropScene = underwaterChannel(emScene,scene.Platforms)
emPropScene=2×1 cell array
    {1x1 sonarEmission}
    {1x1 sonarEmission}

Преобразование излучения в каркас корпуса второй платформы.

emBodyRx = emissionsInBody(emPropScene, platRx);
disp(emBodyRx(1))
    {1x1 sonarEmission}

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

свернуть все

Выбросы в координатах сценария, указанных как массив ячеек radarEmission или sonarEmission эмиссионные объекты.

Каркас кузова, указанный как конструкция или Platform объект. Вы можете использовать Platform объект, поскольку он содержит необходимую информацию. Структура каркаса тела должна содержать по крайней мере следующие поля:

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

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

Velocity

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

Orientation

Ориентация тела по отношению к координатному кадру сценария, заданному как скалярный кватернион или матрица вращения 3 на 3. Ориентация определяет поворот рамки от системы координат сценария к системе координат тела. Единицы измерения безразмерны. Значение по умолчанию: quaternion(1,0,0,0) или, эквивалентно, eye(3).

Поскольку поля в структуре основной рамы являются подмножеством полей в структуре платформы, можно использовать вывод структуры платформы из platformPoses способ trackingScenario в качестве входных данных bodyframe.

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

свернуть все

Выбросы в координатах тела, возвращенные в виде массива ячеек radarEmission и sonarEmission эмиссионные объекты.

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

Создание кода C/C + +
Создайте код C и C++ с помощью MATLAB ® Coder™

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