exponenta event banner

dubinsPathSegment

Отрезок пути Дубиных, соединяющий две позы

Описание

dubinsPathSegment объект содержит информацию для сегмента пути Дубинса, который соединяет два представления как последовательность из трех движений. Опции движения:

  • Прямо

  • Поворот влево на максимальном руле

  • Поворот вправо при максимальном повороте

Создание

Для создания dubinsPathSegment объект, используйте connect функция с dubinsConnection объект:

dubPathSeg = connect(connectionObj,start,goal) соединяет начальную и целевую позу с помощью указанного объекта типа соединения.

Для конкретного определения сегмента пути:

dubPathSeg = dubinsPathSegment(connectionObj,start,goal,motionLengths,motionTypes) определяет тип соединения Dubins, начало и цель, а также соответствующие длины и типы движения. Для этих значений устанавливаются соответствующие свойства объекта.

Свойства

развернуть все

Это свойство доступно только для чтения.

Минимальный радиус поворота транспортного средства, указанный как положительный скаляр в метрах. Это значение соответствует радиусу круга поворота при максимальном угле поворота транспортного средства.

Типы данных: double

Это свойство доступно только для чтения.

Начальная поза транспортного средства в начале сегмента пути, определяемая как вектор [x, y, Start]. x и y в метрах. Λ находится в радианах.

Типы данных: double

Это свойство доступно только для чтения.

Целевое положение транспортного средства в конце сегмента пути, определяемое как вектор [x, y, Start]. x и y в метрах. Λ находится в радианах.

Типы данных: double

Это свойство доступно только для чтения.

Длина каждого движения в сегменте траектории в единицах мира, заданная как трехэлементный числовой вектор. Каждая длина движения соответствует типу движения, указанному в MotionTypes.

Типы данных: double

Это свойство доступно только для чтения.

Тип каждого движения в сегменте пути, определяемый как трехэлементный строковый массив ячеек.

Тип движенияОписание
"S"Прямо
"L"

Поворот влево при максимальном угле поворота транспортного средства

"R"

Поворот вправо при максимальном угле поворота транспортного средства

Каждый тип движения соответствует длине движения, указанной в MotionLengths.

Для соединений Dubins доступны следующие типы путей: {"LSL"} {"LSR"} {"RSL"} {"RSR"} {"RLR"} {"LRL"}.

Пример: {"R" "S" "R"}

Типы данных: cell

Это свойство доступно только для чтения.

Длина сегмента пути, заданная как положительный скаляр в метрах. Эта длина является только суммой элементов в MotionLengths.

Типы данных: double

Функции объекта

interpolateИнтерполяция позиций вдоль сегмента траектории
showВизуализация сегмента пути

Примеры

свернуть все

Создать dubinsConnection объект.

dubConnObj = dubinsConnection;

Определить начало и цель как [x y theta] векторы.

startPose = [0 0 0];
goalPose = [1 1 pi];

Вычислите допустимый сегмент пути для соединения поз.

[pathSegObj, pathCosts] = connect(dubConnObj,startPose,goalPose);

Отображение созданного пути.

show(pathSegObj{1})

Figure contains an axes. The axes contains 12 objects of type line, scatter. These objects represent Path, Start Position, Goal Position.

Расширенные возможности

Создание кода C/C + +
Создайте код C и C++ с помощью MATLAB ® Coder™

.

См. также

Объекты

Функции

Представлен в R2019b