exponenta event banner

робототехника. DubinsPathSegment

Сегмент пути Dubins, соединяющий два положения

Описание

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

  • Прямо

  • Левый поворот в максимуме держится

  • Правый поворот в максимуме держится

Создание

Чтобы сгенерировать объект DubinsPathSegment, используйте функцию connect с объектом robotics.DubinsConnection:

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

В частности задавать сегмент пути:

dubPathSegObj = robotics.DubinsPathSegment(connectionObj,start,goal,motionLengths,motionTypes) задает тип подключения Dubins, запуск и целевые положения, и соответствующие продолжительности движения и типы. Эти значения установлены к соответствующим свойствам в объекте.

Свойства

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

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

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

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

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

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

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

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

Целевое положение робота в конце сегмента пути, заданного как [x, y, Θ] вектор. x и y исчисляются в метрах. Θ исчисляется в радианах.

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

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

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

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

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

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

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

Левый поворот под максимальным руководящим углом автомобиля

"R"

Правый поворот под максимальным руководящим углом автомобиля

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

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

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

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

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

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

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

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

Примеры

свернуть все

Создайте объект DubinsConnection.

dubConnObj = robotics.DubinsConnection;

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

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

Вычислите допустимый сегмент пути, чтобы соединить положения.

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

Покажите сгенерированный путь.

show(pathSegObj{1})

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

Генерация кода C/C++
Генерация кода C и C++ с помощью MATLAB® Coder™.

Введенный в R2018b