文件帮助中心文件
在地图环境中可视化路径指标
show(pathmetricsobj)
show(pathmetricsobj,name,值)
axhandle = show(pathmetricsobj)
例子
表演(pathmetricsobj.)绘制地图环境中的路径,最小间隙。
表演(pathmetricsobj.)
pathmetricsobj.
表演(pathmetricsobj.那名称,价值)使用一个或多个名称值对参数指定其他选项。
表演(pathmetricsobj.那名称,价值)
名称,价值
Axhandle.= show(pathmetricsobj.)输出用于绘制路径的图的轴柄。
Axhandle.= show(pathmetricsobj.)
Axhandle.
全部收缩
基于一组姿势和相关地图环境计算计划路径的平滑度,间隙和有效性。
加载并将映射分配给状态验证器
从示例映射创建占用映射并设置地图分辨率。
加载examplemapsmat.;%simplemap.mapresolution = 1;%细胞/仪表地图= itemancymap(SimpleMap,MapResolution);
创建杜宾斯状态空间。
SENARYPACE =标准尼磺税素;
基于占用映射创建状态验证器,以存储Dubins状态空间中的参数和状态。
StateValidator = ValidatoroccupAccemap(标准空间);
将映射分配给验证器。
StateValidator.map = map;
设置验证器的验证距离。
StateValidator.ValidationDistance = 0.01;
更新状态空间绑定与地图限制相同。
stationspace.statebounds = [map.xworldlimits; map.yworldlimits; [ - pi pi]];
计划路径
创建RRT * Path Planner并允许进一步优化。
Planner = PlannerRrtstar(SenationPace,StateValidator);planner.continuaftergoalReached =真;
减少最大迭代次数并增加最大连接距离。
规划师..AxIterations = 2500;Planner.MaxConnectionDistance = 0.3;
为路径规范器定义开始和目标状态[x,y,theta]vectors。X和y是笛卡尔坐标,还有笛卡尔舞θ.是定向角度。
[
]
start = [2.5,2.5,0];%[米,米,弧度]目标= [22.5,8.75,0];
从起始状态计划到目标状态的路径。计划函数返回一个纳瓦路目的。
纳瓦路
RNG(100,'twister')%可重复的结果[PATH,SOLUTIONINFO] =计划(计划者,开始,目标);
计算和可视化路径指标
创建路径指标对象。
pathmetricsobj = pathmetrics(path,statevalidator);
检查路径有效性。结果是1(真实)如果计划的路径是免费的。0(假)表示无效路径。
1(真实)
0(假)
ispathvalid(pathmetricsobj)
ans =.逻辑1
计算路径的最小间隙。
清关(Pathmetricsobj)
ans = 1.4142
评估路径的平滑度。靠近的值0.表示一个更平滑的路径。直线路径返回一个值0.。
0.
平滑度(pathmetricsobj)
ANS = 1.7318.
可视化路径的最小间隙。
show(pathmetricsobj)图例('计划道路'那'最小清关')
此示例使用:
使用RRT *算法通过停车场计划车辆路径。计算和可视化计划路径的平滑度,间隙和有效性。
装载停车场的肋骨。绘制Costmap以查看停车场和车辆应该避免的膨胀区域。
加载停车镇序司机映射.MAT;costmap =停车艇门;绘图(Costmap)Xlabel('x(米)')ylabel('Y(米)')
创建一个标准尼替代金斯对象并增加最小的图灵半径4.米。
标准尼替代金斯
4.
SENARYPACE =标准尼磺税素;标量值..MinturningRadius = 4;%仪表
创建一个ValidatorvehiclecostMap.对象使用创建的状态空间。
ValidatorvehiclecostMap.
StateValidator = ValidatorVehiclecostMap(SerialPace);
将停车场CostMap分配给状态验证器对象。
statevalidator.map = costmap;
定义车辆的开始和目标姿势[X那y那θ.] vectors。世界单位(X那y)地点是米。世界单位的方向角度θ.是度数。
X
y
θ.
血统= [5,5,90];%[米,米,度]守门= [40,38,180];%[米,米,度]
用一个pathplannerrrt.(自动驾驶工具箱)对象和对象计划(自动驾驶工具箱)从开始姿势到目标姿势来规划车辆路径的功能。
pathplannerrrt.
计划
Planner = pathplannerrt(costmap);Refpath =计划(规划师,血统,守缩小);
沿着每米的路径插入。将方向角从度到弧度转换为弧度。
姿势=零(尺寸(Refpath.Pathsegments,2)+1,3);姿势(1,:) = Refpath.Startpose;为了i = 1:size(RefPath.PathSegments,2)姿势(i + 1,:) = Refpath.PatchSegments(i).GoOlpose;结尾姿势(:,3)= DEG2RAD(姿势(:,3));
创建一个纳瓦路对象使用Dubins状态空间对象和指定的状态姿势。
姿势
路径= NavPath(SyentsPace,Pose);
创建一个途径目的。
途径
检查路径有效性。结果是1(真的)如果计划的路径是免费的。0.(错误的)表示无效路径。
1
真的
错误的
计算和可视化最小值清除路径。
清除
ans = 0.5000.
show(pathmetricsobj)图例('膨胀区域'那'计划道路'那'最小清关')xlabel('x(米)')ylabel('Y(米)')
计算和可视化平滑路径。靠近的值0.表示一个更平滑的路径。直线路径返回一个值0.。
平滑
ans = 0.0842.
show(pathmetricsobj,'度量标准',{'平滑'}) 传奇('膨胀区域'那'路径平滑')xlabel('x(米)')ylabel('Y(米)')
可视化每种状态的间隙。
show(pathmetricsobj,'度量标准',{'不确定'}) 传奇('膨胀区域'那'计划道路'那'公路声明')xlabel('x(米)')ylabel('Y(米)')
路径指标的信息,指定为a途径目的。
指定可选的逗号分离对名称,价值论点。名称是参数名称和价值是相应的价值。名称必须出现在引号内。您可以以任何顺序指定多个名称和值对参数name1,value1,...,namen,valuen。
名称
价值
name1,value1,...,namen,valuen
'父母',axhandle
'父母'
轴
Uiacxes.
用于绘制路径的轴,指定为逗号分隔的对组成'父母'和一个轴或者Uiacxes.目的。如果您未指定父母,创建一个新图形。
父母
例子:show(pathmetricsobj,'父',axhandle)
show(pathmetricsobj,'父',axhandle)
'度量标准'
显示指标选项,指定为逗号分隔对组成'度量标准'和一个单元阵列,具有这些值的任何组合:
'不确定'- 显示最小的路径间隙。
'不确定'
'不确定'- 显示路径状态的清除。
'平滑'- 显示路径平滑度。
'平滑'
例子:Show(pathmetricsobj,'metrics',{'smoothness','solareClearance'})
Show(pathmetricsobj,'metrics',{'smoothness','solareClearance'})
数据类型:细胞
细胞
用于绘制路径的轴,返回为一个轴或者Uiacxes.目的。
ispathvalid.
您有此示例的修改版本。您是否希望使用您的编辑打开此示例?
您单击了与此MATLAB命令对应的链接:
在MATLAB命令窗口中输入它来运行命令。Web浏览器不支持MATLAB命令。万博1manbetx
选择一个网站,以便在可用的地方进行翻译的内容,并查看本地活动和优惠。根据您的位置,我们建议您选择:。
您还可以从以下列表中选择一个网站:
选择中国网站(以中文或英文)以获取最佳网站性能。其他MathWorks国家网站未优化您的位置。
联系您当地的办公室