EngeePhased.Platform
Описание
Системный объект EngeePhased.Platform моделирует поступательное движение одной или нескольких платформ в пространстве. Платформа может быть целью, например, автомобилем или самолетом, а также передатчиком и приемником гидролокатора или радара. В модели предполагается, что платформа совершает поступательное движение с постоянной скоростью или постоянным ускорением на каждом шаге моделирования. Позиции и скорости всегда задаются в глобальной системе координат.
Чтобы смоделировать движущуюся платформу, выполните следующие действия:
-
Создайте объект EngeePhased.Platform и установите его свойства.
-
Вызовите объект с аргументами, как если бы это была функция.
Чтобы узнать подробнее о том, как работать с системными объектами, см. Системные объекты Engee.
Синтаксис
Создание
-
sPlat = phased.Platform()— создает объект движущейся платформы со значениями свойств по умолчанию. -
sPlat = phased.Platform(Name=Value)— создает объект движущейся платформы с заданными свойствами в виде парыName=Value, гдеName— имя свойства, аValue— соответствующее значение. Можно указать несколько пар «имя-значение», порядок пар не имеет значения. Неуказанные свойства сохраняют свои значения по умолчанию.
Использование
-
Pos,Vel = sPlat(T)— возвращает текущее положение Pos и скорость Vel платформы. Затем обновляет положение и скорость. Когда для свойства MotionModel установлено значение"Velocity", а для свойства VelocitySource — значение"Property", положение обновляется в соответствии с уравнениемPos = Pos + Vel * T, где T — прошедшее время (в секундах) для текущего шага. Когда для свойства MotionModel установлено значение"Acceleration", а для свойства AccelerationSource — значение"Property", положение и скорость обновляются в соответствии с уравнениемPos = Pos + Vel * T + 1/2 Acl * T^2иVel = Vel + Acl * T, где T — прошедшее время (в секундах) для текущего шага. -
Pos,Vel = sPlat(T,V)— возвращает текущее положение Pos и скорость Vel платформы. Положение обновляется в соответствии с уравнениемPos = Pos + Vel * T, где T — прошедшее время (в секундах) для текущего шага. Этот синтаксис применяется, если для свойства MotionModel установлено значение"Velocity", а для свойства VelocitySource — значение"Input port". -
Pos,Vel= sPlat(T,A) — возвращает текущее положение Pos и скорость Vel платформы. Положение обновляется в соответствии с уравнениемPos = Pos + Vel * T + 1/2 Acl * T^2иVel = Vel + Acl * T, где T — прошедшее время (в секундах) для текущего шага. Этот синтаксис применяется, если для свойства MotionModel установлено значение"Acceleration", а для свойства AccelerationSource — значение"Input port". -
Pos,Vel,Laxes = sPlat(___)— также возвращает направления осей ориентации платформы Laxes. Этот синтаксис применяется, если для свойства OrientationAxesOutputPort установлено значениеtrue.
Аргументы
Входные аргументы
T —
шаг времени
скаляр
Details
Шаг времени, заданный в виде вещественного скаляра.
Единицы измерения — секунды.
V —
скорость платформы
вещественная матрица 3 на N
Details
Скорость платформы, заданная как вещественная матрица на , где — количество моделируемых платформ.
Единицы измерения — метры в секунду.
Зависимости
Чтобы использовать этот аргумент, установите для свойства MotionModel значение "Velocity", а для свойства VelocitySource — значение "Input port".
A —
ускорение платформы
вещественная матрица 3 на N
Details
Ускорение платформы, заданная как вещественная матрица на , где — количество моделируемых платформ.
Единицы измерения — метры в секунду.
Зависимости
Чтобы использовать этот аргумент, установите для свойства MotionModel значение "Acceleration", а для свойства AccelerationSource — значение "Input port".
Выходные аргументы
Pos —
текущее положение платформы
вещественный вектор-столбец 3 на 1 | вещественная матрица 3 на N
Details
Текущее положение платформы, возвращаемое в виде вещественного вектора-столбца размером на в форме [x, y, z] или вещественной матрицы размером на , где — количество моделируемых платформ. Каждый столбец имеет вид [x, y, z].
Единицы измерения — метры.
Vel —
текущая скорость платформы
вещественный вектор-столбец 3 на 1 | вещественная матрица 3 на N
Details
Текущая скорость платформы, возвращаемая в виде вещественного вектора-столбца размером на в форме [vx, vy, vz] или вещественной матрицы размером на , где — количество моделируемых платформ. Каждый столбец имеет вид [vx, vy, vz].
Единицы измерения — м/c.
Laxes —
оси ориентации платформы
вещественный массив 3 на 3 на N
Details
Текущие оси ориентации платформы, возвращаемые в виде вещественного массива на на , где N — количество моделируемых платформ. Каждая подматрица на является ортонормированной матрицей.
Текущие оси платформы вращаются вокруг вектора нормали к траектории платформы.
Зависимости
Чтобы использовать этот аргумент, установите для свойства OrientationAxesOutputPort значение true.
Свойства
#
MotionModel —
модель движения объекта
Строка
Details
Модель движения объекта, заданная как "Velocity" (по умолчанию), "Acceleration" или "Custom":
-
"Velocity"— платформа движется по траектории с постоянной скоростью на каждом шаге моделирования. -
"Acceleration"— платформа движется по траектории с постоянным ускорением на каждом шаге моделирования. -
"Custom"— движение платформы происходит по последовательности точек траектории движения, заданных параметром CustomTrajectory. Для получения положения и скорости на каждом временном шаге объект выполняет кусочно-кубическую интерполяцию по точкам траектории.
#
InitialPosition —
начальное положение платформы
Вектор / матрица вещественных чисел
Details
Начальное положение платформы в метрах, заданное как матрица на , где каждый столбец представляет собой начальное положение платформы в виде [x, y, z]. Число — количество платформ.
Значение по умолчанию — [0.0, 0.0, 0.0].
#
OrientationAxesOutputPort —
вывод осей ориентации
Логический тип
Details
Установите для этого свойства значение true для получения мгновенных осей ориентации платформы через выходной аргумент Laxes.
Значение по умолчанию — false.
#
AzimuthScanRate —
скорость сканирования по азимутальному углу
Скаляр / вектор / матрица вещественных чисел
Details
Скорость сканирования по азимутальному углу, заданная как вектор на , где — количество платформ.
Каждая запись в векторе — это скорость сканирования по азимуту для соответствующей платформы.
Значение по умолчанию — 10.
Единицы измерения — град/с.
Зависимости
Чтобы использовать это свойство, установите для свойства ScanMode значение "Circular" или "Sector".
#
InitialVelocity —
начальная скорость платформы
Вектор / матрица вещественных чисел
Details
Начальная скорость платформы в м/с, заданная как матрица на , где каждый столбец представляет собой начальную скорость платформы в виде [vx, vy, vz]. Число — количество платформ.
Значение по умолчанию — [0.0, 0.0, 0.0].
Зависимости
Чтобы использовать это свойство, установите для свойств VelocitySource или AccelerationSource значение "Input port".
#
Acceleration —
текущее ускорение
Вектор / матрица вещественных чисел
Details
Текущее ускорение в м/с2, заданное как матрица на , где каждый столбец представляет собой ускорение в виде [ax, ay, az]. Число — количество платформ.
Значение по умолчанию — [0.0, 0.0, 0.0].
Зависимости
Чтобы использовать это свойство, установите для свойства MotionModel значение "Acceleration" и для свойства AccelerationSource — значение "Property".
#
Velocity —
текущая скорость платформы
Вектор / матрица вещественных чисел
Details
Текущая скорость платформы (в м/с), заданная как матрица на , где каждый столбец представляет собой начальную скорость платформы в виде [vx, vy, vz]. Число — количество платформ.
Значение по умолчанию — [0.0, 0.0, 0.0].
Зависимости
Чтобы использовать это свойство, установите для свойства MotionModel значение "Velocity" и для свойства VelocitySource — значение "Property".
#
VelocitySource —
источник данных о скорости
Строка
Details
Это свойство используется только при установке свойства MotionModel в значение "Velocity". В этом случае для модели необходимо предоставить данные о скорости. В качестве источника данных о скорости укажите "Property" (по умолчанию) или "Input port".
#
InitialOrientationAxes —
начальная ориентация платформы
Двумерная / Трехмерная матрица вещественных чисел
Details
Три оси, определяющие начальную локальную систему координат платформы, заданные как матрица на на . Каждый столбец матрицы представляет собой ось локальной системы координат. Все три оси должны быть ортогональными.
Значение по умолчанию — [1.0 0.0 0.0; 0.0 1.0 0.0; 0.0 0.0 1.0].
#
AzimuthSpan —
диапазон угла сканирования по азимуту
Матрица вещественных чисел
Details
Диапазон угла сканирования по азимуту, заданный как матрица на 2, где — количество платформ.
Каждая строка матрицы задает диапазон сканирования соответствующей платформы в виде [ScanAngleLowerBound ScanAngleHigherBound]. По умолчанию используется значение [−60 60].
Единицы измерения — градусы.
Зависимости
Чтобы использовать это свойство, установите для свойства ScanMode значение "Sector".
#
AccelerationSource —
источник данных об ускорении
Строка
Details
Это свойство используется только при установке свойства MotionModel в значение "Acceleration". В этом случае для модели необходимо предоставить данные об ускорении. В качестве источника данных об ускорении укажите "Property" (по умолчанию) или "Input port".
#
CustomTrajectory —
точки траектории движения
Двумерная / Трехмерная матрица вещественных чисел
Details
Точки траектории движения, заданные как вещественная матрица на или массив на на , где — количество точек, — количество платформ. Значение — 4 или 7.
Если равно 4, то в первом столбце указываются моменты времени, в которые измеряется положение платформы. Столбцы со 2 по 4 — это измерения положения в координатах , и . Скорость определяется на основе измерений положения.
Если равно 7, то столбцы c 5 по 7 матрицы представляют собой измерения скорости по осям , и .
Единицы времени — секунды, единицы положения — метры, единицы скорости — метры в секунду.
Значение по умолчанию — [0 0 0 0 0 0 0; 1 0 0 0 0 0 0].
Зависимости
Чтобы использовать это свойство, установите для свойства MotionModel значение "Custom".
#
InitialScanAngle —
начальный угол сканирования платформы
Скаляр / вектор / матрица вещественных чисел
Details
Начальный угол сканирования платформы, заданный как вектор на , где — количество платформ.
Сканирование происходит в локальной системе координат платформы. Параметр InitialOrientationAxes задает исходную локальную систему координат. В начале моделирования оси ориентации, заданные параметром InitialOrientationAxes, поворачиваются на угол, указанный в параметре InitialScanAngle. Значение по умолчанию равно нулю. Единицы измерения — градусы.
Значение по умолчанию — 0.
Зависимости
Чтобы использовать это свойство, установите для свойства ScanMode значение "Circular" или "Sector".
#
ScanMode —
режим механического сканирования
Строка
Details
Режим механического сканирования для платформы, задаваемый как "None" (по умолчанию), "Circular" или "Sector":
-
"Circular"— платформа непрерывно сканирует по часовой стрелке на360градусов в азимутальном направлении по осям ориентации платформы. -
"Sector"— платформа сканирует по часовой стрелке в азимутальном направлении по осям ориентации платформы в диапазоне, заданном параметром AzimuthSpan. Когда сканирование платформы достигает границы диапазона, сканирование меняет направление и возвращается к другой границе сканирования. Сканирование происходит в пределах осей ориентации платформы.
Дополнительно
Ориентация платформы
Details
Платформа имеет связанную с ней локальную систему координат, определяемую тремя ортонормированными векторами осей. Направление и величина вектора скорости могут изменяться при каждом вызове этого объекта. Когда платформа совершает криволинейное движение, ориентация осей локальной системы координат поворачивается вместе с движением платформы. Изменение направления вектора скорости определяет матрицу поворота. Эта же матрица поворота затем используется для поворота локальной системы координат. Когда вектор скорости сохраняет постоянное направление, матрица поворота является единичной матрицей. Начальная ориентация локальной системы координат задается с помощью свойства InitialOrientationAxes. При указании нескольких платформ каждая платформа вращается независимо.
Примеры
-
Выбор типа зондирующего сигнала с целью улучшения дальности действия радилокационной системы
-
Многоканальная широкополосная система пеленгации малоразмерных объектов
-
Модель однопозиционной радиолокационной системы с применением системных объектов
-
Моделирование тестовых сигналов для радиолокационного приемника
-
Кривые обнаружения (ROC) часть 2: Моделирование методом Монте-Карло