主要内容

stateSpaceReedsShepp

reed - shepp车辆的状态空间

描述

stateSpaceReedsShepp对象存储REEDSSHEPP状态空间中的参数和状态,该空间由[xyθ.].xy是笛卡尔坐标,然后呢θ.是定向角度。Reeds-Shepp状态空间对转弯半径有下限(由此指定)MinTurningRadius属性)和转发成本和反向成本(由前扣逆转属性),用于在状态之间导航。

创建

描述

例子

空间=标准划分的shepp.创建具有默认状态边界的reed - shepp状态空间对象xy, 和θ.

求法=标准划分的sshpp(界限指定了界限xy, 和θ..超出边界的状态值将被截断到边界。输入,界限,设置值的值总决赛财产。

属性

全部展开

状态空间的名称,以字符串形式指定。

此属性是只读的。

状态空间的维度,指定为正整数。

状态变量的界,指定为一个3 × 2实值矩阵。

  • 属性的上、下界x在米。

  • 第二行指定了下限和上限y在米。

  • 第三行指定了下限和上限θ.州弧度。

数据类型:

最小转弯半径,单位为米,指定为正标量。最小转弯半径是指车辆在单一方向上以最大转向所能绕的最小圆。

向前运动的成本乘数,指定为正标量。增加成本以惩罚前进。

反向运动的成本乘数,指定为正标量。增加惩罚反向运动的成本。

对象的功能

复制 创建状态空间对象的深度拷贝
距离 两态距离
enforceStateBounds 减少州到州的边界
插入 国家之间插入
sampleGaussian 使用高斯分布的样本状态
sampleUniform 样本状态使用均匀分布

例子

全部折叠

创建一个reed shepp状态空间。

党卫军= stateSpaceReedsShepp;

创建一个occupanyMap基于状态验证器,使用创建的状态空间。

sv = validatorOccupancyMap (ss);

从示例地图创建占用映射并将地图分辨率设置为10个单元/仪表。

负载exampleMaps地图= occupancyMap (simpleMap 10);sv。地图=地图;

为验证器设置验证距离。

sv。ValidationDistance = 0.01;

更新状态空间边界,使其与地图限制相同。

ss.StateBounds = [map.XWorldLimits; map.YWorldLimits;[-ππ]];

创建路径规划器并提高最大连接距离。

规划师= plannerRRT (ss、sv);计划。MaxConnectionDistance = 0.3;

设定开始和目标状态。

开始= (0.5,0.5,0);目标= (2.5,0.2,0);

使用默认设置计划路径。

rng (100“旋风”);%可重复的结果[pthObj, solnInfo] = planner.plan(开始,目标);

可视化结果。

显示(地图);持有;情节(solnInfo.TreeData (: 1) solnInfo.TreeData (:, 2),“。”);%树扩展plot(pthobj.states(:,1),pthobj.states(:,2),的r -“线宽”, 2)%画出路径

图中包含一个坐标轴。以“占用网格”为标题的坐标轴包含图像、直线三个对象。

扩展功能

C / c++代码生成
使用MATLAB®Coder™生成C和C ++代码。

介绍了R2019b