Создание плавной, ограниченной толчком траектории движения в сценарии вождения
smoothTrajectory функция создает плавную траекторию, ограниченную рывком, для актера в сценарии вождения. Сформированная траектория характеризуется плавным переходом ускорений между ППМ, что делает ее совместимой для генерации измерений синтетической инерциальной навигационной системы (INS) и глобальной навигационной спутниковой системы (GNSS) из insSensor object™ системы. Дополнительные сведения о том, как smoothTrajectory генерирует траектории, см. раздел Алгоритмы.
smoothTrajectory(___, задает параметры, использующие одну или несколько пар имя-значение и любую из комбинаций входных аргументов из предыдущих синтаксисов. Например, можно задать угол ориентации рыскания актера или транспортного средства в каждой ППМ или максимальную величину рывка на траектории.Name,Value)
Если smoothTrajectory функция не может вычислить плавную траекторию, ограниченную рывком, учитывая входные параметры, попробуйте внести следующие корректировки в сценарий:
Увеличить расстояния между ППМ, чтобы дать транспортному средству больше времени для ускорения до заданных скоростей.
Понизить скорости на каждом ППМ. Попробуйте преобразовать значения скорости из метра в секунду в мили в час, чтобы увидеть, реалистичны ли скорости, учитывая сценарий. Например, маловероятно, что алгоритм может вычислить гладкую траекторию для резкого поворота, который принимается со скоростью 30 м/с (около 67 миль/ч).
Увеличьте максимальный рывок. Увеличение максимума рывка позволяет алгоритму вычислять больше возможных траекторий за счет снижения комфорта пассажиров.
smoothTrajectory функция создает траекторию, ограниченную толчком, используя профиль трапециевидного ускорения. Эта траектория имеет плавные переходы ускорения между ППМ, что приводит к комфортной езде для пассажиров. Функция вычисляет отдельный профиль трапециевидного ускорения для каждого из N-1 сегментов между ППМ траектории.
Рассмотрим простой сценарий, при котором автомобиль едет на расстояние 50 метров по 100-метровой дороге. Траектория состоит из одного 50-метрового сегмента, в котором автомобиль должен увеличить свою скорость с 5 м/с до 10 м/с к концу сегмента. Траектория имеет дополнительное ограничение, при котором максимальный продольный рывок не должен превышать 0,5 м/с3.
scenario = drivingScenario; car = vehicle(scenario); road(scenario,[0 -25; 0 75]); % m waypoints = [0 0; 0 50]; % m speed = [5 10]; % m/s jerk = 0.5; % m/s^3 smoothTrajectory(car,waypoints,speed,'Jerk',jerk)
Учитывая ограничения расстояния, скорости и рывка этого сегмента ППМ, smoothTrajectory функция формирует трехфазный трапециевидный профиль ускорения:
Линейное увеличение ускорения. Удерживайте константу рывка при значении не более jerk.
Удерживайте ускорение постоянным. Уменьшить рывок до 0.
Линейное уменьшение ускорения. Удерживать постоянную рывка на значении не менее -jerk.
Эти графики визуализируют расстояние, скорость, ускорение и профиль рывка вдоль этого сегмента ППМ во времени. Три фазы профиля ускорения образуют трапециевидную форму.

При снижении скорости между ППМ smoothTrajectory функция формирует профиль трехфазного трапециевидного ускорения в обратном порядке. В случае пониженной скорости форма профиля ускорения является обратной форме, показанной на предыдущем графике.
[1] Бэ, Иль, Джейюнг Мун и Чонсек Со. «К комфортному вождению автобуса». Электроника 8, № 9 (27 августа 2019 г.): 943. https://doi.org/10.3390/electronics8090943.