Проверяющая столкновение настройка для costmap на основе инфляции
inflationCollisionChecker
функция создает InflationCollisionChecker
объект, который содержит проверяющую столкновение настройку транспортного средства costmap. Транспортное средство costmap с этой настройкой раздувает размер препятствий в среде транспортного средства. Эта инфляция основана на заданном InflationCollisionChecker
свойства, такие как размерности транспортного средства и радиус кругов, требуемых заключать транспортное средство. Для получения дополнительной информации см. Алгоритмы. Алгоритмы планирования пути, такие как pathPlannerRRT
, используйте эту costmap проверяющую столкновение настройку, чтобы избежать раздутых препятствий и запланировать пути без коллизий через среду.
Используйте InflationCollisionChecker
возразите, чтобы установить CollisionChecker
свойство вашего vehicleCostmap
объект. Эта проверяющая столкновение настройка влияет на возвращаемые значения checkFree
и checkOccupied
функции используются vehicleCostmap
. Эти значения указывают, свободно ли положение транспортного средства или занято.
ccConfig = inflationCollisionChecker
создает InflationCollisionChecker
объект, ccConfig
, это содержит проверяющую столкновение настройку транспортного средства costmap. Этот объект использует один круг, чтобы заключить транспортное средство. Размерности транспортного средства соответствуют значениям vehicleDimensions
по умолчанию объект.
ccConfig = inflationCollisionChecker(vehicleDims)
задает размерности транспортного средства, где vehicleDims
vehicleDimensions
объект. vehicleDims
введите устанавливает VehicleDimensions
свойство ccConfig
.
ccConfig = inflationCollisionChecker(
также указывает, что количество кругов раньше заключало транспортное средство. vehicleDims
,numCircles
)numCircles
введите устанавливает NumCircles
свойство ccConfig
.
ccConfig = inflationCollisionChecker(___,
устанавливает Name,Value
)CenterPlacements
и InflationRadius
свойства с помощью пар "имя-значение" и входных параметров от любого из предыдущих синтаксисов. Заключите каждое имя свойства в кавычки.
inflationCollisionChecker('CenterPlacements',[0.2 0.5 0.8],'InflationRadius',1.2)
plot | Постройте настройку столкновения |
Чтобы визуально проверить, что круги полностью заключают транспортное средство, используйте plot
функция. Если круги не полностью заключают транспортное средство, некоторые свободные положения, возвращенные checkFree
(или незанятые положения, возвращенные checkOccupied
) может на самом деле быть в столкновении.
InflationRadius
свойство InflationCollisionChecker
определяет сумму, в мировых единицах измерения, которыми можно раздуть препятствия. По умолчанию, InflationRadius
равно радиусу самого маленького набора перекрывающихся кругов, требуемых полностью заключать транспортное средство, как определено следующими свойствами:
NumCircles
— Количество кругов раньше заключало транспортное средство
CenterPlacements
— Размещения центров круга вдоль продольной оси транспортного средства
VehicleDimensions
— Размерности транспортного средства
Для получения дополнительной информации о том, как эта проверяющая столкновение настройка задает раздутые области в costmap, смотрите раздел Algorithms vehicleCostmap
.
[1] Циглер, J. и К. Стиллер. "Быстрая проверка столкновения интеллектуальное планирование движения транспортного средства". IEEE интеллектуальный симпозиум транспортного средства. 21-24 июня 2010.