exponenta event banner

запланировать

Найти свободный от препятствий путь между двумя позами

Описание

пример

path = plan(planner,start,goal) вычисляет свободный от препятствий путь между позами начала и цели, указанный как [x y theta] векторы, с использованием входных данных plannerHybridAStar объект.

Примеры

свернуть все

Запланируйте путь без столкновения для транспортного средства через парковку с помощью алгоритма Hybrid A *.

Создание и назначение карты средству проверки состояния

Загрузите значения стоимости ячеек в карту стоимости транспортного средства на стоянке.

load parkingLotCostVal.mat % costVal

Создать binaryOccupancyMap со значениями затрат.

map = binaryOccupancyMap(costVal);

Создание объекта проверки состояния для проверки конфликтов.

validator = validatorOccupancyMap;

Назначьте карту объекту проверки состояния.

validator.Map = map;

Планирование и визуализация траектории

Инициализируйте plannerHybridAStar с объектом проверки состояния. Укажите MinTurningRadius и MotionPrimitiveLength свойства плановика.

planner = plannerHybridAStar(validator,'MinTurningRadius',4,'MotionPrimitiveLength',6);

Определите начальные и целевые представления для транспортного средства как векторы [x, y, theta]. x и y указывают положение в метрах, а theta - угол ориентации в радианах.

startPose = [6 10 pi/2]; % [meters, meters, radians]
goalPose = [90 54 -pi/2];

Запланируйте путь от начальной позы до позы цели.

refpath = plan(planner,startPose,goalPose);

Визуализируйте путь с помощью функции show.

show(planner)

Figure contains an axes. The axes with title Hybrid A* Path Planner contains 6 objects of type image, line, scatter. These objects represent Forward Motion Primitives, Reverse Motion Primitives, Final Path, Start, Goal.

Входные аргументы

свернуть все

Гибридный планировщик пути A *, указанный как plannerHybridAStar объект.

Начальное расположение пути, указанное как вектор 1 на 3 в форме [x y theta]. x и y указывают положение в метрах, а theta - угол ориентации в радианах.

Пример: [5 5 pi/2]

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

Конечное расположение пути, указанное как вектор 1 на 3 в форме [x y theta]. x и y указывают положение в метрах, а theta - угол ориентации в радианах.

Пример: [45 45 pi/4]

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

Выходные аргументы

свернуть все

Путь без препятствий, возвращенный как navPath объект.

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

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

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