Генератор траектории путевой точки
The waypointTrajectory
Системная object™ генерирует траектории, используя заданные точки пути. При создании системного объекта можно опционально задать время прибытия, скорость и ориентацию в каждой путевой точке. Смотрите Алгоритмы для получения дополнительной информации.
Чтобы сгенерировать траекторию из путевых точек:
Создайте waypointTrajectory
Объекту и установите его свойства.
Вызовите объект, как если бы он был функцией.
Дополнительные сведения о работе системных объектов см. в разделе «Что такое системные объекты?».
возвращает Системный объект, trajectory
= waypointTrajectorytrajectory
, который генерирует траекторию, основанную на стационарных путевых точках по умолчанию.
задает trajectory
= waypointTrajectory(Waypoints
,TimeOfArrival
)Waypoints
что сгенерированная траектория проходит, а TimeOfArrival
в каждой путевой точке.
устанавливает каждый аргумент или свойство создания trajectory
= waypointTrajectory(Waypoints
,TimeOfArrival
,Name,Value
)Name
к заданной Value
. Неопределенные свойства и аргументы создания имеют значения по умолчанию или предполагаемые значения.
trajectory = waypointTrajectory([10,10,0;20,20,0;20,20,10],[0,0.5,10])
создает траекторию путевой точки Системного объекта, trajectory
, который начинается с путевой точки [10,10,0]
, и затем проходит через [20,20,0]
через 0,5 секунды и [20,20,10]
через 10 секунд.Аргументы создания являются свойствами, которые задаются во время создания Системного объекта и не могут быть изменены позже. Если вы явным образом не задаете значение аргумента создания, значение свойства выводится.
Если вы задаете любой аргумент создания, то необходимо задать как аргументы создания точек пути, так и аргументы создания TimeOfArrivate. Можно задать Waypoints
и TimeOfArrival
как аргументы только для значения или пар "имя-значение".
[
выводит систему координат данных траектории на основе заданных аргументов и свойств создания.position
,orientation
,velocity
,acceleration
,angularVelocity
] = trajectory()
Чтобы использовать функцию объекта, задайте системный объект в качестве первого входного параметра. Например, чтобы освободить системные ресурсы системного объекта с именем obj
, используйте следующий синтаксис:
release(obj)
The waypointTrajectory
Системный объект определяет траекторию, которая плавно проходит через путевые точки. Траектория соединяет точки пути через интерполяцию, которая принимает, что направление тяжести, выраженное в опорной системе координат траектории, является постоянным. Обычно можно использовать waypointTrajectory
для моделирования траекторий платформы или транспортного средства в пределах расстояния в сотни километров.
Планарный путь траектории (проекция x - y плоскость) состоит из кусочно-хлороидных кривых. Кривизна кривой между двумя последовательными путевыми точками изменяется линейно с длиной кривой между ними. Направление тангенса пути в каждой точке пути выбирается таким образом, чтобы минимизировать разрывы в кривизне, если только курс не задан явным образом через Course
свойство или неявно через Velocities
свойство. Когда путь установлен, объект использует кубическую интерполяцию Гермита, чтобы вычислить местоположение транспортного средства на протяжении пути как функцию времени и пройденного планарного расстояния.
Нормальный компонент (z -компонент) траектории впоследствии выбирается, чтобы удовлетворить сохраняющему форму кусочно-сплайну (PCHIP), если только скорость набора высоты не задана явно через ClimbRate
свойство или третий столбец Velocities
свойство. Выберите знак скорости подъема на основе выбранных ReferenceFrame
:
Когда выбирается система координат 'ENU', установка положительной скорости подъема приводит к увеличению значения z.
Когда выбирается система координат 'NED', установка положительной скорости подъема приводит к уменьшению значения z.
Вы можете задать ориентацию транспортного средства через путь двумя основными способами:
Если на Orientation
задано свойство, тогда объект использует кусочно-кубический кватернионный сплайн, чтобы вычислить ориентацию вдоль пути как функцию времени.
Если на Orientation
свойство не задано, тогда рыскание транспортного средства всегда выравнивается по пути. Затем крен и тангаж управляются AutoBank
и AutoPitch
значения свойств, соответственно.
AutoBank | AutoPitch | Описание |
---|---|---|
false | false | Транспортное средство всегда ровно (нулевой тангаж и крен). Обычно это используется для крупных морских судов. |
false | true | Шаг транспортного средства совмещается с путем, и его крен всегда равен нулю. Обычно это используется для наземных транспортных средств. |
true | false | Тангаж и крен транспортного средства выбираются так, чтобы его локальная ось z была выровнена с ускорением сети (включая силу тяжести). Обычно это используется для винтокрылых судов. |
true | true | Транспортное средство крен выбрано так, чтобы его локальная поперечная плоскость совпала с ускорением сети (включая силу тяжести). Шаг транспортного средства совмещен с путем. Обычно это используется для двухколесных транспортных средств и самолетов. |