Генератор траектории ППМ
waypointTrajectory Система object™ генерирует траектории с использованием указанных ППМ. При создании объекта «Система» можно дополнительно указать время прибытия, скорость и ориентацию в каждой точке ППМ. Дополнительные сведения см. в разделе Алгоритмы.
Чтобы сформировать траекторию из ППМ, выполните следующие действия.
Создать waypointTrajectory и задайте его свойства.
Вызовите объект, как если бы это была функция.
Дополнительные сведения о работе системных объектов см. в разделе Что такое системные объекты?.
возвращает объект System, 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 секунд.Аргументы создания - это свойства, которые задаются во время создания объекта System и не могут быть изменены позже. Если явно значение аргумента создания не задано, значение свойства выводится.
Если указан какой-либо аргумент создания, то необходимо указать аргументы создания Waypoints и TimeOfArrival. Можно указать Waypoints и TimeOfArrival в качестве аргументов «только значение» или пар «имя-значение».
[ выводит кадр данных траектории на основе заданных аргументов и свойств создания.position,orientation,velocity,acceleration,angularVelocity] = trajectory()
Чтобы использовать функцию объекта, укажите объект System в качестве первого входного аргумента. Например, для освобождения системных ресурсов объекта System с именем obj, используйте следующий синтаксис:
release(obj)
waypointTrajectory Системный объект определяет траекторию, плавно проходящую через ППМ. Траектория соединяет ППМ через интерполяцию, которая предполагает, что направление гравитации, выраженное в системе координат траектории, является постоянным. Как правило, можно использовать waypointTrajectory для моделирования траекторий платформы или транспортного средства в пределах расстояния в сотни километров.
Плоская траектория траектории (проекция плоскости x-y) состоит из кусочно-клотоидных кривых. Кривизна кривой между двумя последовательными ППМ изменяется линейно в зависимости от длины кривой между ними. Касательное направление траектории в каждой точке ППМ выбирается таким образом, чтобы минимизировать разрывы кривизны, если только курс не указан явно через Course или неявно через Velocities собственность. Как только путь установлен, объект использует кубическую интерполяцию Эрмита для вычисления местоположения транспортного средства по всему пути как функции времени и пройденного планарного расстояния.
Нормальная составляющая (z-составляющая) траектории впоследствии выбирается в соответствии с сохраняющим форму кусочным сплайном (PCHIP), если скорость набора не указана явно через ClimbRate свойство или третий столбец Velocities собственность. Выберите знак скорости подъема на основе выбранного ReferenceFrame:
Когда выбрана опорная рамка «RUS», задание положительной скорости подъема приводит к увеличению значения z.
Когда выбрана опорная рамка «NED», задание положительной скорости подъема приводит к уменьшению значения z.
Ориентацию транспортного средства по пути можно определить двумя основными способами:
Если Orientation задается свойство, то объект использует кусочно-кубический, кватернионный сплайн для вычисления ориентации вдоль траектории как функции времени.
Если Orientation свойство не указано, тогда рыскание транспортного средства всегда выравнивается с траекторией. Затем валком и шагом управляют AutoBank и AutoPitch значения свойств соответственно.
AutoBank | AutoPitch | Описание |
|---|---|---|
false | false | Транспортное средство всегда на уровне (нулевой шаг и крен). Это обычно используется для крупных морских судов. |
false | true | Шаг транспортного средства совмещен с траекторией, и его крен всегда равен нулю. Это обычно используется для наземных транспортных средств. |
true | false | Шаг и крен транспортного средства выбираются таким образом, чтобы его локальная ось z была совмещена с чистым ускорением (включая гравитацию). Обычно он используется для вертолетов. |
true | true | Крен транспортного средства выбирают таким образом, чтобы его локальная поперечная плоскость совпадала с чистым ускорением (включая гравитацию). Шаг транспортного средства совмещен с траекторией движения. Это обычно используется для двухколесных транспортных средств и самолетов. |