Сглаженный путь к транспортному средству с помощью интерполяции кубическим сплайном
[ генерирует сглаженный путь к транспортному средству, состоя из poses,directions] = smoothPathSpline(refPoses,refDirections,numSmoothPoses)numSmoothPoses дискретизированные положения, путем подбора кривой входному пути к ссылке позируют к кубическому сплайну. Учитывая входные направления контура ссылки, smoothPathSpline также возвращает направления, которые соответствуют каждому положению.
Используйте эту функцию, чтобы преобразовать путь к транспортному средству C1-continuous к пути C2-continuous. Пути C1-continuous включают driving.DubinsPathSegment или driving.ReedsSheppPathSegment пути, что можно запланировать использование pathPlannerRRT объект. Для получения дополнительной информации об этих типах пути см. C1-Continuous и Пути C2-Continuous.
Можно использовать возвращенные положения и направления с контроллером транспортного средства, такой как lateralControllerStanley функция.
[ задает минимальный разделительный порог между положениями. Если расстояние между двумя положениями меньше, чем poses,directions] = smoothPathSpline(refPoses,refDirections,numSmoothPoses,minSeparation)minSeparation, функция использует только одно из положений для интерполяции.
[___, также возвращает совокупную длину пути и подписанное искривление пути в каждом возвращенном положении, с помощью любого из предыдущих синтаксисов. Используйте эти значения, чтобы сгенерировать скоростной профиль вдоль пути. cumLengths,curvatures] = smoothPathSpline(___)
Чтобы проверять, без коллизий ли сглаженный путь, укажите, что сглаженное изображает из себя вход к checkPathValidity функция.
Алгоритм сглаживания пути интерполирует параметрический кубический сплайн, который проходит через все входные точки положения ссылки. Параметр сплайна является совокупной длиной хорды в этих точках. [1]
Направление касательной сглаживавшего выхода path приблизительно совпадает с углом ориентации транспортного средства при запуске и целевых положениях.
[1] Плавающий предмет, Майкл С. "На Отклонении Параметрического Кубического Сплайна Interpolant от Его Многоугольника Данных". Компьютер помог Геометрическому Проекту. Издание 25, Номер 3, 2008, стр 148–156.
[2] Lepetic, Марко, Грегор Клэнкэр, Игорь Скрянк, Драго Матко и Бостджэн Потокник. "Время Оптимальное Планирование пути, Рассматривая Ускоряющие Пределы". Робототехника и Автономные системы. Издание 45, Числа 3-4, 2003, стр 199–210.