文档帮助中心
检查计划车辆路径的有效性
isValid = checkPathValidity (refPath costmap)
isValid = checkPathValidity (refPoses costmap)
例子
isValid= checkPathValidity (refPath,costmap)检查计划车辆路径的有效性,refPath,对照车辆成本地图。使用此函数测试路径在变化的环境中是否有效。
isValid= checkPathValidity (refPath,costmap)
isValid
refPath
costmap
如果下列条件为真,则路径有效:
这条路至少有一个姿势。
这条路是无碰撞的,在极限之内costmap。
isValid= checkPathValidity (refPoses,costmap)检查车辆姿态序列的有效性,refPoses,对照车辆成本地图。
isValid= checkPathValidity (refPoses,costmap)
refPoses
全部折叠
使用最优快速探索随机树(RRT*)算法规划车辆通过停车场的路径。检查路径是否有效,然后绘制沿路径的过渡位姿。
加载一个停车场的成本地图。绘制成本地图,以看到停车场和膨胀的区域,为车辆避免。
data =负载(“parkingLotCostmap.mat”);costmap = data.parkingLotCostmap;情节(costmap)
将车辆的起始姿势和目标姿势定义为[x,y,Θ)向量。世界单位(x,y)地点以米为单位。世界单位为Θ方位角的单位是度。
startPose = [4,4,90];%[米,米,度]goalPose = [30, 13, 0];
使用一个pathPlannerRRT目标规划从起始姿势到目标姿势的路径。
pathPlannerRRT
规划师= pathPlannerRRT (costmap);refPath =计划(计划、startPose goalPose);
检查路径是否有效。
isPathValid = checkPathValidity (refPath costmap)
isPathValid =逻辑1
沿路径插入过渡位姿。
transitionPoses =插入(refPath);
在成本图上标出计划的路径和过渡位置。
持有在情节(refPath“DisplayName的”,“计划路径”)散射(transitionPoses (: 1) transitionPoses (:, 2), [],“填充”,…“DisplayName的”,“过渡姿势”)举行从
driving.Path
计划车辆路径,指定为adriving.Path对象。
vehicleCostmap
用于冲突检查的成本图,指定为vehicleCostmap对象。
车辆姿态序列,指定为米的-×3矩阵x,y,Θ)向量。米为指定姿态的数量。
x和y指定车辆的位置。这些值必须使用相同的世界单位costmap。
Θ指定车辆的方向角,单位为度。
1
0
表示计划车辆路径的有效性,refPath或者是车辆的姿势顺序,refPoses,作为逻辑值返回1或0。
姿态的路径或序列是有效的(1)如符合下列条件:
该路径或位姿序列具有至少一个位姿。
该路径或位姿序列是无碰撞的,并在的限制costmap。
若要检查车辆路径是否有效,则checkPathValidity函数离散路径。然后,该函数检查在离散点的姿态是无碰撞的。无碰撞姿态的阈值取决于其分辨率checkPathValidity可获得。
checkPathValidity
计划
情节
您的系统中存在此示例的修改版本。你想打开这个版本吗?
你点击了一个链接,对应于这个MATLAB命令:
通过在MATLAB命令窗口中输入该命令来运行它。Web浏览器不支持MATLAB命令。金宝app
选择一个网站来获取可用的翻译内容,并查看本地事件和报价。根据你的位置,我们建议你选择:。
你也可以从以下列表中选择一个网站:
选择中国网站(中文或英文),以获得最佳的网站表现。其他MathWorks国家站点没有针对您所在位置的访问进行优化。
联系你当地的办公室